小橘 42f943c303 refactor: flatten role folders into single .ts files
Each role's index.ts + prompt.ts merged into a single <role>.ts file.
Committer stays as re-export from _shared.
Import paths updated in build.ts and moderator.ts.

Closes #13
2026-04-29 12:21:41 +00:00

25 lines
974 B
TypeScript

import { z } from "zod";
export const plannerMetaSchema = z.object({
senseName: z.string().describe("kebab-case sense name from the plan"),
});
export type PlannerMeta = z.infer<typeof plannerMetaSchema>;
export function plannerPrompt({ threadId }: { threadId: string }): string {
return `You are planning a new Nerve sense.
Read the workflow thread for the user's request: \`nerve thread ${threadId}\`
Read the nerve-dev skill for sense conventions: \`cat node_modules/@uncaged/nerve-skills/nerve-dev/SKILL.md\`
Also look at existing senses in the \`senses/\` directory for patterns.
Pick a good kebab-case name for this sense. Produce a PLAN (not code) in markdown:
## Sense Design
### Name — kebab-case
### Fields — name, type (integer/real/text), description
### Compute Logic — step-by-step, specific Node.js APIs or shell commands
### Trigger Config — group, interval, throttle, timeout
Output ONLY the plan. Be precise and implementation-ready.`;
}