@dedesfr/prompter 0.9.0 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +35 -0
- package/README.md +105 -77
- package/dist/cli/index.js +25 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +35 -9
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/login.d.ts +4 -0
- package/dist/commands/login.d.ts.map +1 -0
- package/dist/commands/login.js +56 -0
- package/dist/commands/login.js.map +1 -0
- package/dist/commands/logout.d.ts +4 -0
- package/dist/commands/logout.d.ts.map +1 -0
- package/dist/commands/logout.js +14 -0
- package/dist/commands/logout.js.map +1 -0
- package/dist/commands/update.d.ts +0 -2
- package/dist/commands/update.d.ts.map +1 -1
- package/dist/commands/update.js +19 -48
- package/dist/commands/update.js.map +1 -1
- package/dist/commands/whoami.d.ts +4 -0
- package/dist/commands/whoami.d.ts.map +1 -0
- package/dist/commands/whoami.js +42 -0
- package/dist/commands/whoami.js.map +1 -0
- package/dist/core/auth-store.d.ts +10 -0
- package/dist/core/auth-store.d.ts.map +1 -0
- package/dist/core/auth-store.js +39 -0
- package/dist/core/auth-store.js.map +1 -0
- package/dist/core/config.d.ts +0 -7
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js +0 -128
- package/dist/core/config.js.map +1 -1
- package/dist/core/registry.d.ts +18 -0
- package/dist/core/registry.d.ts.map +1 -0
- package/dist/core/registry.js +94 -0
- package/dist/core/registry.js.map +1 -0
- package/package.json +7 -1
- package/AGENTS.md +0 -123
- package/CLAUDE.md +0 -17
- package/build.js +0 -20
- package/convex-setup.md +0 -403
- package/dist/core/prompt-templates.d.ts +0 -23
- package/dist/core/prompt-templates.d.ts.map +0 -1
- package/dist/core/prompt-templates.js +0 -3485
- package/dist/core/prompt-templates.js.map +0 -1
- package/prompt/ai-humanizer.md +0 -45
- package/prompt/api-contract-generator.md +0 -234
- package/prompt/apply.md +0 -17
- package/prompt/archive.md +0 -21
- package/prompt/design-system.md +0 -210
- package/prompt/document-explainer.md +0 -149
- package/prompt/epic-generator.md +0 -198
- package/prompt/epic-single.md +0 -47
- package/prompt/erd-generator.md +0 -130
- package/prompt/fsd-generator.md +0 -157
- package/prompt/prd-agent-generator.md +0 -147
- package/prompt/prd-generator.md +0 -195
- package/prompt/product-brief.md +0 -289
- package/prompt/proposal.md +0 -22
- package/prompt/qa-test-scenario.md +0 -133
- package/prompt/skill-creator.md +0 -350
- package/prompt/story-generator.md +0 -278
- package/prompt/story-single.md +0 -70
- package/prompt/tdd-generator.md +0 -294
- package/prompt/tdd-lite-generator.md +0 -224
- package/prompt/wireframe-generator.md +0 -219
- package/skills/ai-context-generator/SKILL.md +0 -54
- package/skills/ai-context-generator/references/AGENTS.template.md +0 -83
- package/skills/ai-context-generator/references/CLAUDE.template.md +0 -39
- package/skills/ai-context-generator/references/behavioral-guidelines.md +0 -71
- package/skills/ai-context-generator/references/discovery-checklist.md +0 -40
- package/skills/ai-context-generator/references/examples/AGENTS.good.md +0 -103
- package/skills/ai-context-generator/references/extraction-checklist.md +0 -23
- package/skills/ai-context-generator/references/overlays/laravel.md +0 -44
- package/skills/ai-humanizer/SKILL.md +0 -50
- package/skills/api-contract-generator/SKILL.md +0 -243
- package/skills/apply/SKILL.md +0 -23
- package/skills/archive/SKILL.md +0 -27
- package/skills/cerebro/SKILL.md +0 -187
- package/skills/cerebro/references/agents.md +0 -213
- package/skills/code-review/SKILL.md +0 -373
- package/skills/code-review/assets/report-template-agent.md +0 -212
- package/skills/code-review/assets/report-template-compact.md +0 -81
- package/skills/code-review/assets/report-template-full.md +0 -264
- package/skills/code-review/assets/report-template-human.md +0 -168
- package/skills/code-review/references/universal-patterns.md +0 -495
- package/skills/design-md/README.md +0 -34
- package/skills/design-md/SKILL.md +0 -172
- package/skills/design-md/examples/DESIGN.md +0 -154
- package/skills/design-system/SKILL.md +0 -216
- package/skills/design-system-generator/SKILL.md +0 -324
- package/skills/design-system-generator/assets/design-system-template.md +0 -348
- package/skills/design-system-generator/references/extraction-patterns.md +0 -321
- package/skills/doc-builder/SKILL.md +0 -115
- package/skills/doc-builder/references/ui-patterns.md +0 -394
- package/skills/document-explainer/SKILL.md +0 -155
- package/skills/document-translator/SKILL.md +0 -58
- package/skills/enhance/SKILL.md +0 -47
- package/skills/enhance-prompt/README.md +0 -34
- package/skills/enhance-prompt/SKILL.md +0 -204
- package/skills/enhance-prompt/references/KEYWORDS.md +0 -114
- package/skills/epic-generator/SKILL.md +0 -204
- package/skills/epic-single/SKILL.md +0 -63
- package/skills/erd-generator/SKILL.md +0 -138
- package/skills/feature-planner/SKILL.md +0 -305
- package/skills/feature-planner/assets/implementation-plan-template.md +0 -85
- package/skills/frontend-design/LICENSE.txt +0 -177
- package/skills/frontend-design/SKILL.md +0 -42
- package/skills/fsd-generator/SKILL.md +0 -163
- package/skills/gamma-builder/SKILL.md +0 -134
- package/skills/laravel-code-review/SKILL.md +0 -383
- package/skills/laravel-code-review/assets/report-template-agent.md +0 -195
- package/skills/laravel-code-review/assets/report-template-compact.md +0 -79
- package/skills/laravel-code-review/assets/report-template-full.md +0 -253
- package/skills/laravel-code-review/assets/report-template-human.md +0 -159
- package/skills/laravel-code-review/references/laravel-patterns.md +0 -571
- package/skills/laravel-code-review/references/php84-features.md +0 -442
- package/skills/mcp-builder/LICENSE.txt +0 -202
- package/skills/mcp-builder/SKILL.md +0 -236
- package/skills/mcp-builder/reference/evaluation.md +0 -602
- package/skills/mcp-builder/reference/mcp_best_practices.md +0 -249
- package/skills/mcp-builder/reference/node_mcp_server.md +0 -970
- package/skills/mcp-builder/reference/python_mcp_server.md +0 -719
- package/skills/mcp-builder/scripts/connections.py +0 -151
- package/skills/mcp-builder/scripts/evaluation.py +0 -373
- package/skills/mcp-builder/scripts/example_evaluation.xml +0 -22
- package/skills/mcp-builder/scripts/requirements.txt +0 -2
- package/skills/meeting-notes/SKILL.md +0 -159
- package/skills/meeting-notes/evals/evals.json +0 -23
- package/skills/prd-agent-generator/SKILL.md +0 -132
- package/skills/prd-generator/SKILL.md +0 -211
- package/skills/product-brief/SKILL.md +0 -141
- package/skills/project-orchestrator/SKILL.md +0 -487
- package/skills/project-orchestrator/assets/caddy-vps-setup.md +0 -180
- package/skills/project-orchestrator/assets/plan-summary-template.md +0 -159
- package/skills/prompter-specs/SKILL.md +0 -115
- package/skills/prompter-workflow/SKILL.md +0 -166
- package/skills/prompter-workflow/evals/evals.json +0 -89
- package/skills/proposal/SKILL.md +0 -28
- package/skills/qa-test-scenario/SKILL.md +0 -149
- package/skills/skill-creator/SKILL.md +0 -173
- package/skills/sph-generator/SKILL.md +0 -488
- package/skills/story-generator/SKILL.md +0 -285
- package/skills/story-single/SKILL.md +0 -86
- package/skills/tdd-generator/SKILL.md +0 -300
- package/skills/tdd-lite-generator/SKILL.md +0 -230
- package/skills/ui-ux-pro/SKILL.md +0 -199
- package/skills/ui-ux-pro/assets/design-spec-template.md +0 -173
- package/skills/ui-ux-pro/references/component-patterns.md +0 -255
- package/skills/ui-ux-pro/references/design-principles.md +0 -167
- package/skills/wireframe-generator/SKILL.md +0 -227
- package/src/cli/index.ts +0 -223
- package/src/commands/archive.ts +0 -302
- package/src/commands/change.ts +0 -292
- package/src/commands/config.ts +0 -233
- package/src/commands/guide.ts +0 -50
- package/src/commands/init.ts +0 -597
- package/src/commands/list.ts +0 -194
- package/src/commands/show.ts +0 -138
- package/src/commands/spec.ts +0 -251
- package/src/commands/update.ts +0 -129
- package/src/commands/upgrade.ts +0 -30
- package/src/commands/validate.ts +0 -326
- package/src/core/artifact-graph/graph.ts +0 -167
- package/src/core/artifact-graph/index.ts +0 -44
- package/src/core/artifact-graph/instruction-loader.ts +0 -302
- package/src/core/artifact-graph/resolver.ts +0 -226
- package/src/core/artifact-graph/schema.ts +0 -124
- package/src/core/artifact-graph/state.ts +0 -64
- package/src/core/artifact-graph/types.ts +0 -65
- package/src/core/completions/command-registry.ts +0 -382
- package/src/core/completions/completion-provider.ts +0 -128
- package/src/core/completions/generators/bash-generator.ts +0 -191
- package/src/core/completions/generators/fish-generator.ts +0 -188
- package/src/core/completions/generators/powershell-generator.ts +0 -223
- package/src/core/completions/generators/zsh-generator.ts +0 -281
- package/src/core/completions/templates/bash-templates.ts +0 -24
- package/src/core/completions/templates/fish-templates.ts +0 -40
- package/src/core/completions/templates/powershell-templates.ts +0 -25
- package/src/core/completions/templates/zsh-templates.ts +0 -36
- package/src/core/completions/types.ts +0 -90
- package/src/core/config-schema.ts +0 -230
- package/src/core/config.ts +0 -181
- package/src/core/configurators/slash/antigravity.ts +0 -10
- package/src/core/configurators/slash/base.ts +0 -109
- package/src/core/configurators/slash/claude.ts +0 -10
- package/src/core/configurators/slash/codex.ts +0 -10
- package/src/core/configurators/slash/droid.ts +0 -10
- package/src/core/configurators/slash/forge.ts +0 -10
- package/src/core/configurators/slash/github-copilot.ts +0 -10
- package/src/core/configurators/slash/index.ts +0 -10
- package/src/core/configurators/slash/kilocode.ts +0 -10
- package/src/core/configurators/slash/opencode.ts +0 -10
- package/src/core/configurators/slash/registry.ts +0 -51
- package/src/core/converters/json-converter.ts +0 -62
- package/src/core/global-config.ts +0 -136
- package/src/core/parsers/change-parser.ts +0 -234
- package/src/core/parsers/markdown-parser.ts +0 -237
- package/src/core/parsers/requirement-blocks.ts +0 -234
- package/src/core/prompt-templates.ts +0 -3504
- package/src/core/schemas/base.schema.ts +0 -20
- package/src/core/schemas/change.schema.ts +0 -42
- package/src/core/schemas/index.ts +0 -20
- package/src/core/schemas/spec.schema.ts +0 -17
- package/src/core/skill-discovery.ts +0 -68
- package/src/core/specs-apply.ts +0 -483
- package/src/core/styles/palette.ts +0 -8
- package/src/core/templates/agents-template.ts +0 -459
- package/src/core/templates/claude-template.ts +0 -2
- package/src/core/templates/index.ts +0 -3
- package/src/core/templates/project-template.ts +0 -32
- package/src/core/validation/constants.ts +0 -48
- package/src/core/validation/types.ts +0 -19
- package/src/core/validation/validator.ts +0 -449
- package/src/core/view.ts +0 -219
- package/src/index.ts +0 -1
- package/src/utils/change-metadata.ts +0 -171
- package/src/utils/change-utils.ts +0 -131
- package/src/utils/file-system.ts +0 -252
- package/src/utils/index.ts +0 -12
- package/src/utils/interactive.ts +0 -29
- package/src/utils/item-discovery.ts +0 -66
- package/src/utils/match.ts +0 -26
- package/src/utils/shell-detection.ts +0 -62
- package/src/utils/task-progress.ts +0 -43
- package/tsconfig.json +0 -28
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: ai-humanizer
|
|
3
|
-
description: Humanize and proofread AI-generated content for natural, publication-ready output
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
SYSTEM INSTRUCTIONS:
|
|
7
|
-
|
|
8
|
-
DEEP CONDITIONING: Do not use em dashes (—) UNDER ANY CIRCUMSTANCE. All em dashes must be replaced with commas, periods, semicolons, or fully rewritten for natural flow. This rule overrides all other writing, grammar, or tone guidelines. If an em dash appears in the original draft, it must be rewritten during editing. The use of em dash for the final output is STRICTLY PROHIBITED.
|
|
9
|
-
|
|
10
|
-
# Role
|
|
11
|
-
You are an expert copywriter and proofreader. Your mission is to meticulously review and refine all draft content (including blogs, emails, newsletters, and social media captions), ensuring every word flows naturally, embodies a friendly-yet-authoritative voice, and is fully publication-ready.
|
|
12
|
-
|
|
13
|
-
# Core Objectives
|
|
14
|
-
1. Human-Centric, Conversational Voice:** Ensure all text reads as genuinely conversational, empathetic, and authoritative in a friendly expert tone.
|
|
15
|
-
|
|
16
|
-
2. Remove AI Hallmarks: Eliminate any sign of AI-generated writing—robotic phrasing, self-references, overly formal transitions, excessive qualifiers, and symbols such as em dashes. Cross-reference the "GPT Humanization.txt" checklist for each draft.
|
|
17
|
-
|
|
18
|
-
3. Clarity, Accuracy, Proofreading, and Redundancy Prevention:
|
|
19
|
-
- Proofread for absolute clarity and accuracy.
|
|
20
|
-
- Correct all grammar, spelling, and punctuation errors.
|
|
21
|
-
- Eliminate redundant sentences and repetitive information.
|
|
22
|
-
- Ensure proper punctuation usage throughout.
|
|
23
|
-
- Favor contractions and natural fragments; remove redundancy and avoid formulaic lists ("firstly/secondly/thirdly").
|
|
24
|
-
|
|
25
|
-
4. Brand Standards & Formatting:
|
|
26
|
-
- Use only approved vocabulary and phrasing from the style guide.
|
|
27
|
-
- Apply formatting for headings, subheadings, paragraphs, and iconography exactly as specified. Avoid symbol overuse.
|
|
28
|
-
- Ensure product names and calls-to-action are consistent and always benefit-focused.
|
|
29
|
-
|
|
30
|
-
5. Actionable Feedback: Provide specific, actionable feedback for every change:
|
|
31
|
-
- Highlight all edits with concise explanations (e.g., "Changed 'Moreover' to 'Plus' for a friendlier flow").
|
|
32
|
-
- Suggest detailed rewrites for areas needing substantial revision.
|
|
33
|
-
|
|
34
|
-
# Interaction Protocol
|
|
35
|
-
- Always ask the user to provide the complete draft text before beginning any proofreading.
|
|
36
|
-
|
|
37
|
-
# Output Requirements
|
|
38
|
-
- A clean, final draft incorporating all changes, with no em dash throughout the entire output.
|
|
39
|
-
|
|
40
|
-
# Tone and Style
|
|
41
|
-
- Maintain a professional, neutral, and supportive tone.
|
|
42
|
-
- Avoid clinical, alarmist, or overly formal language.
|
|
43
|
-
- Ensure content is always clear, universally accessible, and empathetic.
|
|
44
|
-
|
|
45
|
-
# Important Reminders
|
|
46
|
-
- Never use em dashes (—). Replace all em dashes with commas, periods, semicolons, or restructured phrasing; this overrides all other stylistic considerations.
|
|
47
|
-
- Watch for and eliminate em dashes from both the input and the output.
|
|
48
|
-
- Prevent redundancies of text, sentences, and information.
|
|
49
|
-
- Be vigilant about proper punctuation in every sentence.
|
|
50
|
-
- Ensure the final output is indistinguishable from human writing.
|
|
@@ -1,243 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: api-contract-generator
|
|
3
|
-
description: Generate OpenAPI specification from FSD and ERD
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# API Contract Generator Prompt
|
|
7
|
-
|
|
8
|
-
# Role & Expertise
|
|
9
|
-
You are a Senior API Architect and Technical Documentation Specialist with extensive experience in RESTful API design, OpenAPI/Swagger specifications, and translating business requirements into precise technical contracts. You have deep expertise in data modeling, HTTP standards, and enterprise integration patterns.
|
|
10
|
-
|
|
11
|
-
# Context
|
|
12
|
-
You will receive a Functional Specification Document (FSD) and an Entity Relationship Diagram (ERD) as inputs. Your task is to synthesize these artifacts into a comprehensive API contract that developers can immediately implement. The API contract must accurately reflect the business logic from the FSD while respecting the data structures defined in the ERD.
|
|
13
|
-
|
|
14
|
-
# Primary Objective
|
|
15
|
-
Generate a complete, production-ready API contract in OpenAPI 3.0+ specification format that:
|
|
16
|
-
- Covers all functional requirements from the FSD
|
|
17
|
-
- Aligns data models with the ERD entities and relationships
|
|
18
|
-
- Follows REST best practices and industry standards
|
|
19
|
-
- Is immediately usable for development and API documentation tools
|
|
20
|
-
|
|
21
|
-
# Process
|
|
22
|
-
|
|
23
|
-
## Phase 1: Analysis
|
|
24
|
-
1. **FSD Extraction**
|
|
25
|
-
- Identify all user stories/use cases
|
|
26
|
-
- Extract business rules and validation requirements
|
|
27
|
-
- Map functional flows to potential API operations
|
|
28
|
-
- Note authentication/authorization requirements
|
|
29
|
-
- Identify error scenarios and edge cases
|
|
30
|
-
|
|
31
|
-
2. **ERD Interpretation**
|
|
32
|
-
- Catalog all entities and their attributes
|
|
33
|
-
- Map data types to API schema types
|
|
34
|
-
- Identify relationships (1:1, 1:N, M:N)
|
|
35
|
-
- Note required vs optional fields
|
|
36
|
-
- Identify unique constraints and keys
|
|
37
|
-
|
|
38
|
-
3. **Cross-Reference Mapping**
|
|
39
|
-
- Link FSD operations to ERD entities
|
|
40
|
-
- Identify CRUD requirements per entity
|
|
41
|
-
- Map business validations to schema constraints
|
|
42
|
-
- Determine resource hierarchies and nesting
|
|
43
|
-
|
|
44
|
-
## Phase 2: API Design
|
|
45
|
-
1. **Resource Modeling**
|
|
46
|
-
- Define REST resources from entities
|
|
47
|
-
- Establish URL hierarchy and naming
|
|
48
|
-
- Determine resource representations (full, summary, reference)
|
|
49
|
-
|
|
50
|
-
2. **Endpoint Definition**
|
|
51
|
-
- Map operations to HTTP methods
|
|
52
|
-
- Define path parameters and query parameters
|
|
53
|
-
- Establish pagination, filtering, sorting patterns
|
|
54
|
-
|
|
55
|
-
3. **Schema Development**
|
|
56
|
-
- Create request/response schemas
|
|
57
|
-
- Define reusable components
|
|
58
|
-
- Establish enum types from domain values
|
|
59
|
-
|
|
60
|
-
4. **Security & Error Handling**
|
|
61
|
-
- Define authentication schemes
|
|
62
|
-
- Create standard error response formats
|
|
63
|
-
- Map business errors to HTTP status codes
|
|
64
|
-
|
|
65
|
-
## Phase 3: Contract Generation
|
|
66
|
-
1. Compile OpenAPI specification
|
|
67
|
-
2. Add comprehensive descriptions
|
|
68
|
-
3. Include request/response examples
|
|
69
|
-
4. Document edge cases and constraints
|
|
70
|
-
|
|
71
|
-
# Input Specifications
|
|
72
|
-
|
|
73
|
-
**Functional Specification Document (FSD):**
|
|
74
|
-
- Business requirements and user stories
|
|
75
|
-
- Functional flows and processes
|
|
76
|
-
- Business rules and validations
|
|
77
|
-
- User roles and permissions
|
|
78
|
-
- Expected system behaviors
|
|
79
|
-
|
|
80
|
-
**Entity Relationship Diagram (ERD):**
|
|
81
|
-
- Entity names and descriptions
|
|
82
|
-
- Attributes with data types
|
|
83
|
-
- Primary and foreign keys
|
|
84
|
-
- Relationship cardinalities
|
|
85
|
-
- Constraints and indexes
|
|
86
|
-
|
|
87
|
-
# Output Requirements
|
|
88
|
-
|
|
89
|
-
**Format:** OpenAPI 3.0+ YAML specification
|
|
90
|
-
|
|
91
|
-
**Required Sections:**
|
|
92
|
-
|
|
93
|
-
```yaml
|
|
94
|
-
openapi: 3.0.x
|
|
95
|
-
info:
|
|
96
|
-
title: [API Name]
|
|
97
|
-
description: [Comprehensive API description]
|
|
98
|
-
version: [Version]
|
|
99
|
-
|
|
100
|
-
servers:
|
|
101
|
-
- url: [Base URL patterns]
|
|
102
|
-
|
|
103
|
-
tags:
|
|
104
|
-
- [Logical groupings of endpoints]
|
|
105
|
-
|
|
106
|
-
paths:
|
|
107
|
-
[All endpoints with full specifications]
|
|
108
|
-
|
|
109
|
-
components:
|
|
110
|
-
schemas:
|
|
111
|
-
[All data models derived from ERD]
|
|
112
|
-
parameters:
|
|
113
|
-
[Reusable parameters]
|
|
114
|
-
responses:
|
|
115
|
-
[Standard response definitions]
|
|
116
|
-
securitySchemes:
|
|
117
|
-
[Authentication methods]
|
|
118
|
-
examples:
|
|
119
|
-
[Request/response examples]
|
|
120
|
-
|
|
121
|
-
security:
|
|
122
|
-
[Global security requirements]
|
|
123
|
-
```
|
|
124
|
-
|
|
125
|
-
**Per Endpoint Requirements:**
|
|
126
|
-
- Summary and detailed description
|
|
127
|
-
- Operation ID (for code generation)
|
|
128
|
-
- Tags for grouping
|
|
129
|
-
- All parameters (path, query, header)
|
|
130
|
-
- Request body with schema reference
|
|
131
|
-
- All possible responses (2xx, 4xx, 5xx)
|
|
132
|
-
- Security requirements
|
|
133
|
-
- At least one example per request/response
|
|
134
|
-
|
|
135
|
-
**Schema Requirements:**
|
|
136
|
-
- All properties with types and descriptions
|
|
137
|
-
- Required fields array
|
|
138
|
-
- Validation constraints (minLength, maxLength, pattern, minimum, maximum, enum)
|
|
139
|
-
- Nullable indicators
|
|
140
|
-
- Example values
|
|
141
|
-
|
|
142
|
-
# Quality Standards
|
|
143
|
-
|
|
144
|
-
1. **Completeness**
|
|
145
|
-
- Every FSD requirement maps to at least one endpoint
|
|
146
|
-
- Every ERD entity has corresponding schema(s)
|
|
147
|
-
- All CRUD operations covered where applicable
|
|
148
|
-
|
|
149
|
-
2. **Consistency**
|
|
150
|
-
- Uniform naming conventions (camelCase for properties, kebab-case for URLs)
|
|
151
|
-
- Consistent response structures across endpoints
|
|
152
|
-
- Standard pagination/filtering patterns
|
|
153
|
-
|
|
154
|
-
3. **Accuracy**
|
|
155
|
-
- Data types match ERD definitions
|
|
156
|
-
- Validations reflect business rules
|
|
157
|
-
- Relationships properly represented in nested/linked resources
|
|
158
|
-
|
|
159
|
-
4. **Usability**
|
|
160
|
-
- Clear, actionable descriptions
|
|
161
|
-
- Meaningful examples
|
|
162
|
-
- Logical endpoint organization
|
|
163
|
-
|
|
164
|
-
5. **Standards Compliance**
|
|
165
|
-
- Valid OpenAPI 3.0+ syntax
|
|
166
|
-
- RESTful conventions followed
|
|
167
|
-
- HTTP semantics correctly applied
|
|
168
|
-
|
|
169
|
-
# Special Instructions
|
|
170
|
-
|
|
171
|
-
**Naming Conventions:**
|
|
172
|
-
- Resources: plural nouns (e.g., `/users`, `/orders`)
|
|
173
|
-
- Endpoints: `kebab-case`
|
|
174
|
-
- Schema names: `PascalCase`
|
|
175
|
-
- Properties: `camelCase`
|
|
176
|
-
- Query parameters: `camelCase`
|
|
177
|
-
|
|
178
|
-
**Standard Patterns to Apply:**
|
|
179
|
-
|
|
180
|
-
| Operation | Method | Path Pattern | Success Code |
|
|
181
|
-
|-----------|--------|--------------|--------------|
|
|
182
|
-
| List | GET | /resources | 200 |
|
|
183
|
-
| Get One | GET | /resources/{id} | 200 |
|
|
184
|
-
| Create | POST | /resources | 201 |
|
|
185
|
-
| Full Update | PUT | /resources/{id} | 200 |
|
|
186
|
-
| Partial Update | PATCH | /resources/{id} | 200 |
|
|
187
|
-
| Delete | DELETE | /resources/{id} | 204 |
|
|
188
|
-
|
|
189
|
-
**Pagination Standard:**
|
|
190
|
-
```yaml
|
|
191
|
-
parameters:
|
|
192
|
-
- name: page
|
|
193
|
-
in: query
|
|
194
|
-
schema:
|
|
195
|
-
type: integer
|
|
196
|
-
default: 1
|
|
197
|
-
- name: limit
|
|
198
|
-
in: query
|
|
199
|
-
schema:
|
|
200
|
-
type: integer
|
|
201
|
-
default: 20
|
|
202
|
-
maximum: 100
|
|
203
|
-
```
|
|
204
|
-
|
|
205
|
-
**Error Response Standard:**
|
|
206
|
-
```yaml
|
|
207
|
-
ErrorResponse:
|
|
208
|
-
type: object
|
|
209
|
-
required:
|
|
210
|
-
- code
|
|
211
|
-
- message
|
|
212
|
-
properties:
|
|
213
|
-
code:
|
|
214
|
-
type: string
|
|
215
|
-
message:
|
|
216
|
-
type: string
|
|
217
|
-
details:
|
|
218
|
-
type: array
|
|
219
|
-
items:
|
|
220
|
-
type: object
|
|
221
|
-
properties:
|
|
222
|
-
field:
|
|
223
|
-
type: string
|
|
224
|
-
issue:
|
|
225
|
-
type: string
|
|
226
|
-
```
|
|
227
|
-
|
|
228
|
-
**Relationship Handling:**
|
|
229
|
-
- 1:1 → Embed or link with reference ID
|
|
230
|
-
- 1:N → Nested collection endpoint or link array
|
|
231
|
-
- M:N → Separate join resource or array of references
|
|
232
|
-
|
|
233
|
-
# Verification Checklist
|
|
234
|
-
|
|
235
|
-
After generating the contract, verify:
|
|
236
|
-
- [ ] All FSD use cases have corresponding endpoints
|
|
237
|
-
- [ ] All ERD entities have schema definitions
|
|
238
|
-
- [ ] All relationships are properly represented
|
|
239
|
-
- [ ] Authentication is defined for protected endpoints
|
|
240
|
-
- [ ] Error responses cover all documented error scenarios
|
|
241
|
-
- [ ] Examples are valid against schemas
|
|
242
|
-
- [ ] Specification validates against OpenAPI 3.0 schema
|
|
243
|
-
|
package/skills/apply/SKILL.md
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: apply
|
|
3
|
-
description: Implement and apply an approved change proposal
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
<!-- PROMPTER:START -->
|
|
7
|
-
**Guardrails**
|
|
8
|
-
- Favor straightforward, minimal implementations first and add complexity only when it is requested or clearly required.
|
|
9
|
-
- Keep changes tightly scoped to the requested outcome.
|
|
10
|
-
- Refer to `prompter/AGENTS.md` (located inside the `prompter/` directory—run `ls prompter` if you don't see it) if you need additional Prompter conventions or clarifications.
|
|
11
|
-
|
|
12
|
-
**Steps**
|
|
13
|
-
Track these steps as TODOs and complete them one by one.
|
|
14
|
-
1. Read `changes/<id>/proposal.md`, `design.md` (if present), and `tasks.md` to confirm scope and acceptance criteria.
|
|
15
|
-
2. Work through tasks sequentially, keeping edits minimal and focused on the requested change.
|
|
16
|
-
3. Confirm completion before updating statuses—make sure every item in `tasks.md` is finished.
|
|
17
|
-
4. Update the checklist after all work is done so each task is marked `- [x]` and reflects reality.
|
|
18
|
-
5. Reference `prompter list` or `prompter show <item>` when additional context is required.
|
|
19
|
-
|
|
20
|
-
**Reference**
|
|
21
|
-
- Use `prompter show <id> --json --deltas-only` if you need additional context from the proposal while implementing.
|
|
22
|
-
<!-- PROMPTER:END -->
|
|
23
|
-
|
package/skills/archive/SKILL.md
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: archive
|
|
3
|
-
description: Archive a completed change and update specs
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
<!-- PROMPTER:START -->
|
|
7
|
-
**Guardrails**
|
|
8
|
-
- Favor straightforward, minimal implementations first and add complexity only when it is requested or clearly required.
|
|
9
|
-
- Keep changes tightly scoped to the requested outcome.
|
|
10
|
-
- Refer to `prompter/AGENTS.md` (located inside the `prompter/` directory—run `ls prompter` if you don't see it) if you need additional Prompter conventions or clarifications.
|
|
11
|
-
|
|
12
|
-
**Steps**
|
|
13
|
-
1. Determine the change ID to archive:
|
|
14
|
-
- If this prompt already includes a specific change ID (for example inside a `<ChangeId>` block populated by slash-command arguments), use that value after trimming whitespace.
|
|
15
|
-
- If the conversation references a change loosely (for example by title or summary), run `prompter list` to surface likely IDs, share the relevant candidates, and confirm which one the user intends.
|
|
16
|
-
- Otherwise, review the conversation, run `prompter list`, and ask the user which change to archive; wait for a confirmed change ID before proceeding.
|
|
17
|
-
- If you still cannot identify a single change ID, stop and tell the user you cannot archive anything yet.
|
|
18
|
-
2. Validate the change ID by running `prompter list` (or `prompter show <id>`) and stop if the change is missing, already archived, or otherwise not ready to archive.
|
|
19
|
-
3. Run `prompter archive <id> --yes` so the CLI moves the change and applies spec updates without prompts (use `--skip-specs` only for tooling-only work).
|
|
20
|
-
4. Review the command output to confirm the target specs were updated and the change landed in `changes/archive/`.
|
|
21
|
-
5. Validate with `prompter validate --strict` and inspect with `prompter show <id>` if anything looks off.
|
|
22
|
-
|
|
23
|
-
**Reference**
|
|
24
|
-
- Use `prompter list` to confirm change IDs before archiving.
|
|
25
|
-
- Inspect refreshed specs with `prompter list --specs` and address any validation issues before handing off.
|
|
26
|
-
<!-- PROMPTER:END -->
|
|
27
|
-
|
package/skills/cerebro/SKILL.md
DELETED
|
@@ -1,187 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: cerebro
|
|
3
|
-
description: Save and resume cross-agent conversational sessions through the Cerebro MCP server. Use this skill whenever the user wants to preserve session context before switching AI agents (Claude Code → Codex → OpenCode → Cursor → Windsurf, or any combination), is approaching a usage limit and needs to continue elsewhere, says things like "save this for the next agent", "summarize this session", "I'm switching to Codex", "continuing in OpenCode", "pick up where the last agent left off", "resume from yesterday's session", or invokes `/handoff-save` / `/handoff-resume`. Also trigger for first-time setup when the user asks to connect Cerebro to their agents. Trigger this skill even if the user does not name Cerebro explicitly — any cross-agent handoff or session-summary intent qualifies.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Session Handoff via Cerebro MCP
|
|
7
|
-
|
|
8
|
-
## What this skill is for
|
|
9
|
-
|
|
10
|
-
Long coding sessions often outlive a single agent's usage budget. The user might start in Claude Code, hit a limit, and switch to Codex or OpenCode — but the new agent has zero context. This skill bridges that gap by writing a structured session summary to Cerebro and pulling it back when a new agent starts.
|
|
11
|
-
|
|
12
|
-
---
|
|
13
|
-
|
|
14
|
-
## Step 0 — First-time setup
|
|
15
|
-
|
|
16
|
-
Before save/recall will work, Cerebro MCP must be installed in the agents the user wants to use. Check whether the cerebro tools are already available (look for `mcp__cerebro__memory_create` in Claude Code, or `cerebro.*` tools in other agents).
|
|
17
|
-
|
|
18
|
-
**If not yet set up**, ask the user which agents they want to install Cerebro into, then show only the relevant instructions from the list below. Don't dump all six agents at once — pick the ones they asked for.
|
|
19
|
-
|
|
20
|
-
### Claude Code
|
|
21
|
-
```bash
|
|
22
|
-
claude mcp add --transport http --scope user cerebro http://localhost:3000/api/mcp \
|
|
23
|
-
--header "Authorization: Bearer YOUR_TOKEN"
|
|
24
|
-
```
|
|
25
|
-
Verify: `claude mcp list` — should show `cerebro connected`.
|
|
26
|
-
No restart needed.
|
|
27
|
-
|
|
28
|
-
### OpenCode
|
|
29
|
-
Add to `~/.config/opencode/opencode.json`:
|
|
30
|
-
```json
|
|
31
|
-
{
|
|
32
|
-
"mcp": {
|
|
33
|
-
"cerebro": {
|
|
34
|
-
"type": "remote",
|
|
35
|
-
"url": "http://localhost:3000/api/mcp",
|
|
36
|
-
"headers": { "Authorization": "Bearer YOUR_TOKEN" },
|
|
37
|
-
"enabled": true
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
```
|
|
42
|
-
No restart needed — picked up on next `opencode` invocation.
|
|
43
|
-
|
|
44
|
-
### Codex (OpenAI Codex CLI)
|
|
45
|
-
Add to `~/.codex/config.json`:
|
|
46
|
-
```json
|
|
47
|
-
{
|
|
48
|
-
"mcpServers": {
|
|
49
|
-
"cerebro": {
|
|
50
|
-
"command": "node",
|
|
51
|
-
"args": ["/path/to/cerebro-mcp-server/dist/index.js"],
|
|
52
|
-
"env": {
|
|
53
|
-
"CEREBRO_URL": "http://localhost:3000",
|
|
54
|
-
"CEREBRO_TOKEN": "YOUR_TOKEN"
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
```
|
|
60
|
-
The `cerebro-mcp-server` binary lives in the Cerebro repo under `cerebro-mcp-server/`. Build it once with `npm install && npm run build` if `dist/index.js` doesn't exist yet.
|
|
61
|
-
|
|
62
|
-
### Cursor
|
|
63
|
-
Add to `~/.cursor/mcp.json`:
|
|
64
|
-
```json
|
|
65
|
-
{
|
|
66
|
-
"mcpServers": {
|
|
67
|
-
"cerebro": {
|
|
68
|
-
"command": "node",
|
|
69
|
-
"args": ["/path/to/cerebro-mcp-server/dist/index.js"],
|
|
70
|
-
"env": {
|
|
71
|
-
"CEREBRO_URL": "http://localhost:3000",
|
|
72
|
-
"CEREBRO_TOKEN": "YOUR_TOKEN"
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
```
|
|
78
|
-
**Restart Cursor** to pick up the change.
|
|
79
|
-
|
|
80
|
-
### Windsurf
|
|
81
|
-
Add to `~/.codeium/windsurf/mcp_config.json`:
|
|
82
|
-
```json
|
|
83
|
-
{
|
|
84
|
-
"mcpServers": {
|
|
85
|
-
"cerebro": {
|
|
86
|
-
"command": "node",
|
|
87
|
-
"args": ["/path/to/cerebro-mcp-server/dist/index.js"],
|
|
88
|
-
"env": {
|
|
89
|
-
"CEREBRO_URL": "http://localhost:3000",
|
|
90
|
-
"CEREBRO_TOKEN": "YOUR_TOKEN"
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
```
|
|
96
|
-
**Restart Windsurf** to pick up the change.
|
|
97
|
-
|
|
98
|
-
### Claude Desktop
|
|
99
|
-
- macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
|
|
100
|
-
- Windows: `%APPDATA%\Claude\claude_desktop_config.json`
|
|
101
|
-
```json
|
|
102
|
-
{
|
|
103
|
-
"mcpServers": {
|
|
104
|
-
"cerebro": {
|
|
105
|
-
"command": "node",
|
|
106
|
-
"args": ["/path/to/cerebro-mcp-server/dist/index.js"],
|
|
107
|
-
"env": {
|
|
108
|
-
"CEREBRO_URL": "http://localhost:3000",
|
|
109
|
-
"CEREBRO_TOKEN": "YOUR_TOKEN"
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
```
|
|
115
|
-
**Restart Claude Desktop** to pick up the change.
|
|
116
|
-
|
|
117
|
-
### Getting a token
|
|
118
|
-
Generate one at `http://localhost:3000` → **Settings → Agent Tokens**. One token can be reused across all agents.
|
|
119
|
-
|
|
120
|
-
---
|
|
121
|
-
|
|
122
|
-
## Two operations
|
|
123
|
-
|
|
124
|
-
| Trigger | Action |
|
|
125
|
-
|---|---|
|
|
126
|
-
| `/handoff-save`, "save this session", "I'm switching to Codex", "summarize this for the next agent" | **Save**: write a structured summary to Cerebro |
|
|
127
|
-
| `/handoff-resume`, "resume the last session", "pick up where I left off", "what was Claude working on" | **Recall**: fetch the most recent handoff and load it into context |
|
|
128
|
-
|
|
129
|
-
---
|
|
130
|
-
|
|
131
|
-
## Saving a handoff
|
|
132
|
-
|
|
133
|
-
1. **Build the structured summary** from the conversation so far:
|
|
134
|
-
|
|
135
|
-
```yaml
|
|
136
|
-
goal: <one or two sentences — what is the user ultimately trying to achieve?>
|
|
137
|
-
status: <where things stand right now>
|
|
138
|
-
decisions:
|
|
139
|
-
- <each non-obvious choice, with the reason>
|
|
140
|
-
files_touched:
|
|
141
|
-
- path: <relative path>
|
|
142
|
-
change: <what was modified, added, or deleted>
|
|
143
|
-
open_questions:
|
|
144
|
-
- <anything unresolved or uncertain>
|
|
145
|
-
next_steps:
|
|
146
|
-
- <concrete items the next agent should pick up first>
|
|
147
|
-
gotchas: <optional — subtle constraints the next agent must not miss>
|
|
148
|
-
```
|
|
149
|
-
|
|
150
|
-
Be honest: if a change wasn't applied, don't list it. If a decision was tentative, say so.
|
|
151
|
-
|
|
152
|
-
2. **Pick a project slug** — use the current working directory's folder name. Confirm only if the cwd looks generic (home dir, `/tmp`).
|
|
153
|
-
|
|
154
|
-
3. **Resolve the project ID** via `mcp__cerebro__project_list`. If no project matches the slug, show the existing projects and ask the user whether to pick one or create a new one. If they want a new project, call `mcp__cerebro__project_create` with the slug as the name — no need to open the browser. Never silently fall back to a different project.
|
|
155
|
-
|
|
156
|
-
4. **Call `memory_create`**:
|
|
157
|
-
- `project`: the slug or ID
|
|
158
|
-
- `summary`: the YAML from step 1
|
|
159
|
-
- `sourceAgent`: current agent name (`claude-code`, `codex`, `opencode`, `cursor`, `windsurf`)
|
|
160
|
-
- `tags`: `["session-handoff", "<source-agent-name>"]`
|
|
161
|
-
- `metadata`: `{"cwd": "<current working directory>"}`
|
|
162
|
-
|
|
163
|
-
5. **Confirm** the memory ID to the user. Tell them:
|
|
164
|
-
- They can verify it in the Cerebro dashboard (the ID is shown on each memory card).
|
|
165
|
-
- In any agent, they can load it instantly by just providing the ID: `"load memory <id>"` → `memory_get({ memoryId: "<id>" })` — no project needed.
|
|
166
|
-
|
|
167
|
-
---
|
|
168
|
-
|
|
169
|
-
## Resuming a handoff
|
|
170
|
-
|
|
171
|
-
0. **If the user gives you a memory ID directly** (e.g. "resume memory k97abc123"), call `mcp__cerebro__memory_get({ memoryId: "<id>" })` immediately — skip steps 1–3.
|
|
172
|
-
1. Otherwise, determine the project slug (cwd folder name, or ask).
|
|
173
|
-
2. Resolve to a project ID via `project_list` if needed.
|
|
174
|
-
3. Call `memory_search` with query `"session-handoff"`. Filter results to those with `session-handoff` in their tags, sort by `createdAt` descending, take the newest.
|
|
175
|
-
4. Re-state goal and status in one or two sentences and ask if the user wants to start with the first next-step. Don't dump the whole YAML — they want continuity, not a recap wall.
|
|
176
|
-
5. If multiple handoffs match, list them briefly (date + agent + one-line goal) and ask which to resume.
|
|
177
|
-
6. If nothing matches, say so and offer to search by keyword.
|
|
178
|
-
|
|
179
|
-
---
|
|
180
|
-
|
|
181
|
-
## Why structured YAML
|
|
182
|
-
|
|
183
|
-
Named fields let any agent parse the handoff reliably without re-reading a wall of prose. The next agent has no shared memory of the prior conversation — only this summary. If a field doesn't apply, write `none` or omit it.
|
|
184
|
-
|
|
185
|
-
## Reference
|
|
186
|
-
|
|
187
|
-
`references/agents.md` — per-agent config file paths, transport types, and restart requirements.
|