@crewpilot/agent 1.0.0 → 3.0.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/README.md +35 -11
- package/dist-npm/cli.js +5 -5
- package/dist-npm/index.js +171 -138
- package/package.json +2 -2
- package/prompts/agent.md +38 -22
- package/prompts/copilot-instructions.md +8 -8
- package/prompts/{catalyst.config.json → crewpilot.config.json} +1 -1
- package/prompts/skills/assure-code-quality/SKILL.md +3 -3
- package/prompts/skills/assure-pr-intelligence/SKILL.md +4 -4
- package/prompts/skills/assure-review-functional/SKILL.md +114 -0
- package/prompts/skills/assure-review-standards/SKILL.md +106 -0
- package/prompts/skills/assure-threat-model/SKILL.md +182 -0
- package/prompts/skills/assure-vulnerability-scan/SKILL.md +1 -1
- package/prompts/skills/autopilot-meeting/SKILL.md +43 -16
- package/prompts/skills/autopilot-worker/SKILL.md +177 -63
- package/prompts/skills/daily-digest/SKILL.md +35 -14
- package/prompts/skills/deliver-change-management/SKILL.md +6 -6
- package/prompts/skills/deliver-deploy-guard/SKILL.md +6 -6
- package/prompts/skills/deliver-doc-governance/SKILL.md +2 -2
- package/prompts/skills/engineer-feature-builder/SKILL.md +3 -3
- package/prompts/skills/engineer-root-cause-analysis/SKILL.md +3 -3
- package/prompts/skills/engineer-test-first/SKILL.md +2 -2
- package/prompts/skills/insights-knowledge-base/SKILL.md +32 -11
- package/prompts/skills/insights-pattern-detection/SKILL.md +5 -5
- package/prompts/skills/strategize-architecture-planner/SKILL.md +2 -2
- package/prompts/skills/strategize-solution-design/SKILL.md +2 -2
- package/scripts/postinstall.js +4 -4
|
@@ -193,12 +193,12 @@ If any check fails, fix it before proceeding.
|
|
|
193
193
|
- `codebase` — Understand existing structure, find reusable code
|
|
194
194
|
- `terminal` — Install dependencies, run tests, run linters
|
|
195
195
|
- `findTestFiles` — Locate existing test patterns
|
|
196
|
-
- `
|
|
196
|
+
- `crewpilot_metrics_coverage` — Verify coverage after implementation
|
|
197
197
|
|
|
198
198
|
## Output Format
|
|
199
199
|
|
|
200
200
|
```
|
|
201
|
-
## [
|
|
201
|
+
## [CrewPilot → Feature Builder]
|
|
202
202
|
|
|
203
203
|
### Feature: {name}
|
|
204
204
|
**Acceptance criteria**: {list}
|
|
@@ -238,7 +238,7 @@ After completing work, append **one** contextual hint to the response based on w
|
|
|
238
238
|
| Bug was fixed | 💡 *I can run a systematic root cause analysis to find the real cause, not just the symptom — say "debug this" next time.* |
|
|
239
239
|
| Tests were not written (no test framework or user declined) | 💡 *I can enforce TDD — write failing tests first, then implement — say "test first" next time.* |
|
|
240
240
|
| Complex feature completed | 💡 *I can run code quality, security scan, and deploy readiness checks — say "review this" or "ready to deploy?".* |
|
|
241
|
-
| First interaction in session | 💡 *I'm
|
|
241
|
+
| First interaction in session | 💡 *I'm CrewPilot — I can plan, build, test, review, and ship code end-to-end. Say "autopilot" for the full pipeline, or just tell me what to build.* |
|
|
242
242
|
|
|
243
243
|
**Rules:**
|
|
244
244
|
- One hint per response, max. Never stack multiple hints.
|
|
@@ -99,13 +99,13 @@ If the root cause is still unknown after max_attempts, escalate to human instead
|
|
|
99
99
|
|
|
100
100
|
- `codebase` — Read failing code, trace call chains
|
|
101
101
|
- `terminal` — Run code, execute tests, check logs
|
|
102
|
-
- `
|
|
103
|
-
- `
|
|
102
|
+
- `crewpilot_git_log` — Check recent changes
|
|
103
|
+
- `crewpilot_git_diff` — Compare working vs. broken state
|
|
104
104
|
|
|
105
105
|
## Output Format
|
|
106
106
|
|
|
107
107
|
```
|
|
108
|
-
## [
|
|
108
|
+
## [CrewPilot → Root Cause Analysis]
|
|
109
109
|
|
|
110
110
|
### Symptom
|
|
111
111
|
{error/behavior description}
|
|
@@ -106,12 +106,12 @@ Tests MUST fail before any implementation begins. No exceptions.
|
|
|
106
106
|
- `codebase` — Find existing test patterns, test config
|
|
107
107
|
- `findTestFiles` — Locate related test files
|
|
108
108
|
- `terminal` — Run tests, run coverage
|
|
109
|
-
- `
|
|
109
|
+
- `crewpilot_metrics_coverage` — Get coverage report
|
|
110
110
|
|
|
111
111
|
## Output Format
|
|
112
112
|
|
|
113
113
|
```
|
|
114
|
-
## [
|
|
114
|
+
## [CrewPilot → Test First]
|
|
115
115
|
|
|
116
116
|
### Test Strategy
|
|
117
117
|
- Type: {unit/integration/e2e}
|
|
@@ -56,7 +56,7 @@ digraph knowledge_base {
|
|
|
56
56
|
When a significant decision is made during any skill:
|
|
57
57
|
1. Extract: decision, rationale, alternatives rejected, date, related files
|
|
58
58
|
2. Tag with categories: `architecture`, `technology`, `process`, `convention`
|
|
59
|
-
3. Store via `
|
|
59
|
+
3. Store via `crewpilot_knowledge_store`
|
|
60
60
|
|
|
61
61
|
Entry format:
|
|
62
62
|
```json
|
|
@@ -82,11 +82,32 @@ When `pattern-detection` identifies a codebase convention:
|
|
|
82
82
|
2. Tag with: `pattern`, `convention`, `style`
|
|
83
83
|
3. Reference canonical implementation files
|
|
84
84
|
|
|
85
|
+
#### Store a Meeting Reference
|
|
86
|
+
When a meeting produces decisions or requirements that influence code:
|
|
87
|
+
1. Extract: meeting subject, date, attendees, key decisions, action items, linked documents
|
|
88
|
+
2. Tag with: `meeting`, `decision`, `requirements`, and relevant feature/module tags
|
|
89
|
+
3. Link to the board items created from the meeting (if any)
|
|
90
|
+
4. Store via `crewpilot_knowledge_store`
|
|
91
|
+
|
|
92
|
+
Entry format:
|
|
93
|
+
```json
|
|
94
|
+
{
|
|
95
|
+
"type": "meeting-reference",
|
|
96
|
+
"title": "{meeting subject} — {date}",
|
|
97
|
+
"content": "Decisions: {list}. Requirements: {list}. Action items: {list}.",
|
|
98
|
+
"tags": ["meeting", "{feature}", "{module}"],
|
|
99
|
+
"related_files": ["{board item URLs or issue numbers}"],
|
|
100
|
+
"timestamp": "{ISO date}"
|
|
101
|
+
}
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
This creates a link between decisions and their source meetings — enabling other skills to trace why a requirement exists and who stated it. The `autopilot-meeting` skill should automatically store meeting references after creating board items.
|
|
105
|
+
|
|
85
106
|
### Retrieve Operations
|
|
86
107
|
|
|
87
108
|
#### Direct Query
|
|
88
109
|
User asks "what did we decide about X":
|
|
89
|
-
1. Search knowledge base via `
|
|
110
|
+
1. Search knowledge base via `crewpilot_knowledge_search`
|
|
90
111
|
2. Return matching entries with context
|
|
91
112
|
3. If multiple matches, rank by relevance and recency
|
|
92
113
|
|
|
@@ -99,7 +120,7 @@ Skills query the knowledge base before starting:
|
|
|
99
120
|
|
|
100
121
|
#### Timeline View
|
|
101
122
|
User asks "what happened this week/sprint":
|
|
102
|
-
1. Retrieve entries within the time range via `
|
|
123
|
+
1. Retrieve entries within the time range via `crewpilot_knowledge_timeline`
|
|
103
124
|
2. Group by type (decisions, lessons, patterns)
|
|
104
125
|
3. Present as a chronological narrative
|
|
105
126
|
|
|
@@ -119,17 +140,17 @@ Generate a summary document:
|
|
|
119
140
|
|
|
120
141
|
## Tools Required
|
|
121
142
|
|
|
122
|
-
- `
|
|
123
|
-
- `
|
|
124
|
-
- `
|
|
125
|
-
- `
|
|
126
|
-
- `
|
|
143
|
+
- `crewpilot_knowledge_store` — Write entries to the knowledge base
|
|
144
|
+
- `crewpilot_knowledge_search` — Full-text search across entries
|
|
145
|
+
- `crewpilot_knowledge_timeline` — Time-range queries
|
|
146
|
+
- `crewpilot_knowledge_patterns` — Pattern frequency analysis
|
|
147
|
+
- `crewpilot_knowledge_export` — Generate summary documents
|
|
127
148
|
|
|
128
149
|
## Output Format
|
|
129
150
|
|
|
130
151
|
### For Storage
|
|
131
152
|
```
|
|
132
|
-
## [
|
|
153
|
+
## [CrewPilot → Knowledge Base: Stored]
|
|
133
154
|
|
|
134
155
|
✓ Stored: {type} — "{title}"
|
|
135
156
|
Tags: {tags}
|
|
@@ -138,7 +159,7 @@ Related: {files}
|
|
|
138
159
|
|
|
139
160
|
### For Retrieval
|
|
140
161
|
```
|
|
141
|
-
## [
|
|
162
|
+
## [CrewPilot → Knowledge Base: Retrieved]
|
|
142
163
|
|
|
143
164
|
### Results for "{query}"
|
|
144
165
|
Found {N} entries:
|
|
@@ -154,7 +175,7 @@ Found {N} entries:
|
|
|
154
175
|
|
|
155
176
|
### For Timeline
|
|
156
177
|
```
|
|
157
|
-
## [
|
|
178
|
+
## [CrewPilot → Knowledge Base: Timeline]
|
|
158
179
|
|
|
159
180
|
### {date range}
|
|
160
181
|
|
|
@@ -83,7 +83,7 @@ For each anti-pattern or inconsistency:
|
|
|
83
83
|
3. Rate urgency: address now vs. track vs. accept
|
|
84
84
|
|
|
85
85
|
### Phase 5 — Trend Analysis
|
|
86
|
-
If `
|
|
86
|
+
If `crewpilot_knowledge_search` has historical data:
|
|
87
87
|
1. Compare current patterns vs. previous scans
|
|
88
88
|
2. Identify patterns that are spreading (good or bad)
|
|
89
89
|
3. Flag entropy increase — growing inconsistency over time
|
|
@@ -92,14 +92,14 @@ If `catalyst_knowledge_search` has historical data:
|
|
|
92
92
|
|
|
93
93
|
- `codebase` — Full project scan
|
|
94
94
|
- `terminal` — Run static analysis tools
|
|
95
|
-
- `
|
|
96
|
-
- `
|
|
97
|
-
- `
|
|
95
|
+
- `crewpilot_metrics_complexity` — Complexity metrics per module
|
|
96
|
+
- `crewpilot_knowledge_search` — Historical pattern data
|
|
97
|
+
- `crewpilot_knowledge_store` — Record findings for future comparison
|
|
98
98
|
|
|
99
99
|
## Output Format
|
|
100
100
|
|
|
101
101
|
```
|
|
102
|
-
## [
|
|
102
|
+
## [CrewPilot → Pattern Detection]
|
|
103
103
|
|
|
104
104
|
### Architecture
|
|
105
105
|
{detected patterns and organization style}
|
|
@@ -99,12 +99,12 @@ If `require_adr` is true in config, generate:
|
|
|
99
99
|
|
|
100
100
|
- `codebase` — Analyze existing project structure and dependencies
|
|
101
101
|
- `terminal` — Run dependency analysis commands (package.json, imports, etc.)
|
|
102
|
-
- `
|
|
102
|
+
- `crewpilot_knowledge_search` — Retrieve prior architecture decisions
|
|
103
103
|
|
|
104
104
|
## Output Format
|
|
105
105
|
|
|
106
106
|
```
|
|
107
|
-
## [
|
|
107
|
+
## [CrewPilot → Architecture Planner]
|
|
108
108
|
|
|
109
109
|
### Scope
|
|
110
110
|
{boundaries, actors, quality attributes}
|
|
@@ -79,12 +79,12 @@ Present the recommendation and wait for explicit approval or selection.
|
|
|
79
79
|
|
|
80
80
|
- `codebase` — Scan existing stack for constraints
|
|
81
81
|
- `fetch` — Pull external docs/benchmarks when comparing technologies
|
|
82
|
-
- `
|
|
82
|
+
- `crewpilot_knowledge_search` — Check if similar decisions were made before
|
|
83
83
|
|
|
84
84
|
## Output Format
|
|
85
85
|
|
|
86
86
|
```
|
|
87
|
-
## [
|
|
87
|
+
## [CrewPilot → Solution Design]
|
|
88
88
|
|
|
89
89
|
### Problem
|
|
90
90
|
{one-sentence problem statement}
|
package/scripts/postinstall.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* postinstall.js — Runs after `npm install @crewpilot/agent`
|
|
3
3
|
*
|
|
4
|
-
* Creates .github/ files in the user's project so @
|
|
4
|
+
* Creates .github/ files in the user's project so @CrewPilot agent
|
|
5
5
|
* appears in Copilot Chat dropdown automatically.
|
|
6
6
|
*
|
|
7
7
|
* Uses INIT_CWD (set by npm to the directory where `npm install` was run).
|
|
@@ -94,14 +94,14 @@ function syncSkills() {
|
|
|
94
94
|
try {
|
|
95
95
|
fs.mkdirSync(githubDir, { recursive: true });
|
|
96
96
|
|
|
97
|
-
syncFile('agent.md', path.join('agents', '
|
|
97
|
+
syncFile('agent.md', path.join('agents', 'crewpilot.md'));
|
|
98
98
|
syncFile('copilot-instructions.md', 'copilot-instructions.md');
|
|
99
|
-
syncFile('
|
|
99
|
+
syncFile('crewpilot.config.json', 'crewpilot.config.json');
|
|
100
100
|
syncSkills();
|
|
101
101
|
|
|
102
102
|
if (created > 0) {
|
|
103
103
|
console.log(`\n ⚡ CrewPilot: Created ${created} file(s) in .github/ (${skipped} already existed)`);
|
|
104
|
-
console.log(' ⚡ Open Copilot Chat and select @
|
|
104
|
+
console.log(' ⚡ Open Copilot Chat and select @CrewPilot from the agent dropdown\n');
|
|
105
105
|
}
|
|
106
106
|
} catch {
|
|
107
107
|
// Silently fail — postinstall should never break npm install
|