Wave 0: shared contracts + extension points
- src/core/contracts.ts: plan tree / graph / ledger / job protocol / artifact
registry types — the single source of truth for all workstreams
- tools: per-request factory createTeacherTools({chatId}) composing
questionTools + planTools (stub) + jobTools (stub); quiz gains nodeId
- prompt composition: system-prompt.md + sorted src/agent/prompts/*.md
- ChatRecord.tree + saveTree; pending gate scoped to quiz/ask (+findPendingJobCall)
- chat.tsx: artifact renderer extension point + ChatActionsContext.syncFromServer
This commit is contained in:
@@ -0,0 +1,13 @@
|
||||
# Prompt fragments
|
||||
|
||||
The teacher's system prompt is composed at agent creation:
|
||||
|
||||
1. `src/agent/system-prompt.md` — the base (owned by the orchestrator; do not edit from a worker).
|
||||
2. Every `*.md` file in this directory, in **sorted filename order**, joined with `---` separators.
|
||||
|
||||
Rules for adding a fragment:
|
||||
|
||||
- Name it with a numeric order prefix: `10-plan-tree.md`, `20-jobs.md`, `30-phases.md`.
|
||||
- One fragment per workstream — your brief tells you which filename you own.
|
||||
- Document YOUR tools/behaviors exactly; reference tool input field names verbatim (they must match the zod schemas).
|
||||
- Keep it tight: fragments are always in context. No restating the base prompt.
|
||||
Reference in New Issue
Block a user