nightshift/examples/quickstart-lisp/nightshift.yaml

91 lines
1.8 KiB
YAML

project:
name: tiny-lisp
root: .
task_file: tasks.md
artifact_dir: .nightshift
safety:
require_clean_worktree: false
scoped_paths:
- .
allowed_commands:
- python -m unittest discover -v
forbidden_commands:
- rm -rf
- git push
- curl | bash
experiment:
label: quickstart-lisp
prompt_variant: fake-agent-v1
agents:
planner:
backend: command
command: python agents/fake_planner.py
system_prompt: agents/planner.md
implementer:
backend: command
command: python agents/fake_code_writer.py
system_prompt: agents/implementer.md
reviewer:
backend: command
command: python -c "print('status: pass'); print('reason: quickstart reviewer accepted artifacts')"
system_prompt: agents/reviewer.md
pipeline:
max_task_retries: 3
continue_on_task_failure: false
stages:
- id: plan
type: agent
agent: planner
output: plan.md
- id: context
type: repo_context
output: context-pack.md
- id: implement
type: code_writer
agent: implementer
output: proposed.patch
- id: normalize
type: patch_normalizer
output: normalized.patch
- id: validate_patch
type: patch_validator
output: patch-validation.md
max_files: 4
max_lines: 400
on_fail: implement
- id: apply_patch
type: patch_apply
mode: apply
output: patch-apply-output.txt
on_fail: implement
- id: test
type: command
commands:
- python -m unittest discover -v
output: test-output.txt
shell: true
timeout_seconds: 60
on_fail: implement
- id: review
type: agent_review
agent: reviewer
on_fail: implement
output: review.md
- id: summarize
type: summarize
output: final-notes.md