- workflow-generator → generate-workflow
- sense-generator → generate-sense
- Delete gitea-issue-solver (replaced by solve-issue)
小橘 🍊(NEKO Team)
35 lines
1.4 KiB
TypeScript
35 lines
1.4 KiB
TypeScript
export function testerPrompt({ threadId, nerveRoot }: { threadId: string; nerveRoot: string }): string {
|
|
return `You are testing a newly created Nerve sense end-to-end.
|
|
|
|
**IMPORTANT: The Nerve workspace is at \`${nerveRoot}\`. All paths below are relative to this directory. Always \`cd ${nerveRoot}\` first.**
|
|
|
|
Read the workflow thread for context: \`nerve thread ${threadId}\`
|
|
Read the nerve-dev skill for expected file structure: \`cat ${nerveRoot}/node_modules/@uncaged/nerve-skills/nerve-dev/SKILL.md\`
|
|
|
|
Verify the full lifecycle in this order:
|
|
|
|
1. **File check** — all required sense files exist:
|
|
- \`senses/<name>/src/index.ts\`
|
|
- \`senses/<name>/src/schema.ts\`
|
|
- \`senses/<name>/migrations/\`
|
|
- \`senses/<name>/package.json\`
|
|
|
|
2. **Build** — run inside the sense directory:
|
|
\`\`\`
|
|
cd ${nerveRoot}/senses/<name> && pnpm install --no-cache && pnpm build
|
|
\`\`\`
|
|
Must produce \`index.js\` at sense root without errors.
|
|
|
|
3. **Config check** — \`nerve validate\` passes, confirming nerve.yaml is valid.
|
|
|
|
4. **Sense list** — \`nerve sense list\` shows the sense.
|
|
|
|
5. **Trigger** — \`nerve sense trigger <name>\` completes without error.
|
|
|
|
6. **Query** — \`nerve sense query <name>\` — retry up to 20s until rows appear.
|
|
|
|
If any step fails, include the relevant error output.
|
|
|
|
Output a clear summary: what you checked, what passed, what failed, and why.`;
|
|
}
|