@syntesseraai/opencode-feature-factory 0.2.17 → 0.2.18

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.
@@ -17,7 +17,6 @@ permission:
17
17
  'ff-*': allow
18
18
  planning: allow
19
19
  reviewing: allow
20
- research: allow
21
20
  edit: allow
22
21
  bash: allow
23
22
  write:
@@ -57,7 +56,7 @@ While you implement, delegate:
57
56
 
58
57
  - **@ff-unit-test** - "Generate unit tests for [feature]. Write context to .feature-factory/agents/ff-unit-test-{UUID}.md"
59
58
  - **@ff-e2e-test** - "Create E2E tests for [workflow]. Write context to .feature-factory/agents/ff-e2e-test-{UUID}.md"
60
- - **@research** - "Research edge cases for [technology]. Write context to .feature-factory/agents/research-{UUID}.md"
59
+ - **@ff-research** - "Research edge cases for [technology]. Write context to .feature-factory/agents/ff-research-{UUID}.md"
61
60
 
62
61
  ### Post-Implementation (Parallel)
63
62
 
@@ -92,15 +91,15 @@ After implementation, delegate:
92
91
  When encountering unfamiliar technology during planning:
93
92
 
94
93
  1. **Pause implementation** and create research todo
95
- 2. **Invoke `@research` agent** via Task tool:
94
+ 2. **Invoke `@ff-research` agent** via Task tool:
96
95
  ```
97
- Task(research): "Research [technology/topic] for implementation. Need to understand: 1) Core concepts, 2) Best practices, 3) Integration patterns"
96
+ Task(ff-research): "Research [technology/topic] for implementation. Need to understand: 1) Core concepts, 2) Best practices, 3) Integration patterns"
98
97
  ```
99
98
  3. **Wait for research results** - Do not proceed without understanding
100
99
  4. **Update plan** based on research findings
101
100
  5. **Continue implementation** with new knowledge
102
101
 
103
- **When to invoke @research automatically:**
102
+ **When to invoke @ff-research automatically:**
104
103
 
105
104
  - Unfamiliar library or framework encountered
106
105
  - API integration requirements unclear
@@ -158,7 +157,7 @@ Use the Task tool during building:
158
157
 
159
158
  - **Need planning help** → Invoke `@planning` to create/clarify plan
160
159
  - **Requirements unclear** → Invoke `@ff-acceptance` to validate understanding
161
- - **External research needed** → Invoke `@research` to investigate libraries, APIs, or implementation patterns
160
+ - **External research needed** → Invoke `@ff-research` to investigate libraries, APIs, or implementation patterns
162
161
  - **Code review needed** → Invoke `@ff-review` for mid-build quality check
163
162
  - **Security concerns** → Invoke `@ff-security` for security audit
164
163
  - **Comprehensive validation** → Invoke `@reviewing` for final review
@@ -250,7 +249,7 @@ Use ff-severity-classification when making changes:
250
249
  6. **Delegate in parallel** (while implementing):
251
250
  - Task(ff-unit-test): "Generate unit tests"
252
251
  - Task(ff-e2e-test): "Create E2E tests"
253
- - Task(research): "Research edge cases"
252
+ - Task(ff-research): "Research edge cases"
254
253
  7. **Execute implementation** steps
255
254
  8. **Run quality checks** (lint, typecheck, tests)
256
255
  9. **Self-assess** changes using ff-severity-classification
@@ -4,7 +4,9 @@ mode: subagent
4
4
  temperature: 0.2
5
5
  tools:
6
6
  read: true
7
- bash: true
7
+ write: false
8
+ edit: false
9
+ bash: false
8
10
  skill: true
9
11
  task: true
10
12
  permission:
@@ -126,7 +128,7 @@ Use ff-report-templates skill to format findings:
126
128
 
127
129
  ## When to Use This Agent
128
130
 
129
- Invoke `@research` via Task tool when:
131
+ Invoke `@ff-research` via Task tool when:
130
132
 
131
133
  - **Need to investigate a library/framework** you haven't used before
132
134
  - **Best practices are unclear** for a particular technology
@@ -151,7 +153,7 @@ Other agents should invoke you when they encounter:
151
153
  When @planning encounters an unfamiliar technology:
152
154
 
153
155
  ```
154
- Task(research): "Research [technology name] for our implementation. We need to understand: 1) Core concepts, 2) Best practices for 2026, 3) Integration patterns with [existing stack]"
156
+ Task(ff-research): "Research [technology name] for our implementation. We need to understand: 1) Core concepts, 2) Best practices for 2026, 3) Integration patterns with [existing stack]"
155
157
  ```
156
158
 
157
159
  ### Building Agent Integration
@@ -159,7 +161,7 @@ Task(research): "Research [technology name] for our implementation. We need to u
159
161
  When @building needs implementation details:
160
162
 
161
163
  ```
162
- Task(research): "Find implementation examples for [specific feature]. Look for: 1) Official documentation, 2) Code examples, 3) Common patterns on GitHub"
164
+ Task(ff-research): "Find implementation examples for [specific feature]. Look for: 1) Official documentation, 2) Code examples, 3) Common patterns on GitHub"
163
165
  ```
164
166
 
165
167
  ### Reviewing Agent Integration
@@ -167,7 +169,7 @@ Task(research): "Find implementation examples for [specific feature]. Look for:
167
169
  When @reviewing needs to verify current practices:
168
170
 
169
171
  ```
170
- Task(research): "Research current security best practices for [technology]. Check for: 1) Recent vulnerabilities, 2) Recommended configurations, 3) Current OWASP guidance"
172
+ Task(ff-research): "Research current security best practices for [technology]. Check for: 1) Recent vulnerabilities, 2) Recommended configurations, 3) Current OWASP guidance"
171
173
  ```
172
174
 
173
175
  ## Research Guidelines
@@ -5,8 +5,8 @@ temperature: 0.1
5
5
  color: '#3b82f6'
6
6
  tools:
7
7
  read: true
8
- write: true
9
- edit: true
8
+ write: false
9
+ edit: false
10
10
  bash: false
11
11
  skill: true
12
12
  task: true
@@ -15,7 +15,6 @@ permission:
15
15
  '*': allow
16
16
  task:
17
17
  'ff-*': allow
18
- research: allow
19
18
  explore: allow
20
19
  write:
21
20
  '.feature-factory/agents/*': allow
@@ -53,7 +52,7 @@ ALWAYS prefer delegation. Parallelize these tasks:
53
52
 
54
53
  Delegate these simultaneously at the start:
55
54
 
56
- - **@research** - "Research best practices for [technology]. Write context to .feature-factory/agents/research-{UUID}.md"
55
+ - **@ff-research** - "Research best practices for [technology]. Write context to .feature-factory/agents/ff-research-{UUID}.md"
57
56
  - **@ff-acceptance** - "Validate acceptance criteria. Write context to .feature-factory/agents/ff-acceptance-{UUID}.md"
58
57
  - **@ff-security** - "Threat model for [feature]. Write context to .feature-factory/agents/ff-security-{UUID}.md"
59
58
  - **@explore** - "Explore codebase for similar patterns. Write context to .feature-factory/agents/explore-{UUID}.md"
@@ -175,7 +174,7 @@ Use the Task tool during planning:
175
174
  - **Code exploration needed** → Invoke `@ff-review` to understand existing patterns
176
175
  - **Security considerations** → Invoke `@ff-security` for threat modeling
177
176
  - **Architecture questions** → Invoke `@ff-well-architected` for design review
178
- - **External research needed** → Invoke `@research` to investigate libraries, APIs, or best practices
177
+ - **External research needed** → Invoke `@ff-research` to investigate libraries, APIs, or best practices
179
178
 
180
179
  ## Escalation Guidelines
181
180
 
@@ -195,7 +194,7 @@ Recommend escalation to full architectural planning when:
195
194
  2. **Load required skills** (ff-delegation, ff-mini-plan, ff-todo-management, ff-report-templates)
196
195
  3. **Document context** - Write to `.feature-factory/agents/planning-{UUID}.md`
197
196
  4. **Delegate in parallel**:
198
- - Task(research): "Research [technology] best practices"
197
+ - Task(ff-research): "Research [technology] best practices"
199
198
  - Task(ff-acceptance): "Validate acceptance criteria"
200
199
  - Task(ff-security): "Security audit for [feature]"
201
200
  - Task(explore): "Explore codebase patterns"
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/package.json",
3
3
  "name": "@syntesseraai/opencode-feature-factory",
4
- "version": "0.2.17",
4
+ "version": "0.2.18",
5
5
  "type": "module",
6
6
  "description": "OpenCode plugin for Feature Factory agents - provides sub-agents and skills for validation, review, security, and architecture assessment",
7
7
  "license": "MIT",
@@ -17,7 +17,7 @@ Use this skill to parallelize work across multiple specialized agents using UUID
17
17
  You MUST delegate when:
18
18
 
19
19
  - **Multiple independent tasks** can be worked on simultaneously
20
- - **Specialized expertise** is needed (security, architecture, research)
20
+ - **Specialized expertise** is needed (security, architecture, ff-research)
21
21
  - **Validation** is required from multiple perspectives
22
22
  - **Information gathering** can happen in parallel with planning
23
23
 
@@ -92,7 +92,7 @@ Ask: "What work can happen simultaneously?"
92
92
 
93
93
  Common parallel tasks:
94
94
 
95
- - **Research** + **Planning** (research tech while planning architecture)
95
+ - **ff-research** + **Planning** (research tech while planning architecture)
96
96
  - **Security audit** + **Architecture review** (different perspectives)
97
97
  - **Multiple file modifications** (if in different modules)
98
98
  - **Test writing** + **Documentation** (while implementation continues)
@@ -107,7 +107,7 @@ Use this matrix:
107
107
  | Code quality | @ff-review | @general | Parallel |
108
108
  | Architecture | @ff-well-architected | @general | Parallel |
109
109
  | Requirements | @ff-acceptance | @explore | Blocking |
110
- | Research | @research | @general | Async |
110
+ | Research | @ff-research | @general | Async |
111
111
  | Exploration | @explore | @general | Parallel |
112
112
  | Implementation | @general | N/A | Sequential |
113
113
 
@@ -123,7 +123,7 @@ Generate child UUIDs:
123
123
 
124
124
  Delegate simultaneously:
125
125
  Task(ff-security): "Security audit: Check OAuth implementation for CSRF vulnerabilities. Write context to .feature-factory/agents/ff-security-{$CHILD_1}.md"
126
- Task(research): "Research: Find best OAuth libraries for Node.js. Write context to .feature-factory/agents/research-{$CHILD_2}.md"
126
+ Task(ff-research): "Research: Find best OAuth libraries for Node.js. Write context to .feature-factory/agents/ff-research-{$CHILD_2}.md"
127
127
  Task(ff-acceptance): "Validate: Check if acceptance criteria are clear. Write context to .feature-factory/agents/ff-acceptance-{$CHILD_3}.md"
128
128
  ```
129
129
 
@@ -196,7 +196,7 @@ Combine findings from all delegated agents:
196
196
  - **Key Finding:** CSRF protection required
197
197
  - **Recommendation:** Use state parameter in OAuth flow
198
198
 
199
- ### Research (@research)
199
+ ### Research (@ff-research)
200
200
 
201
201
  - **Status:** Completed
202
202
  - **Key Finding:** Passport.js is most popular library
@@ -221,7 +221,7 @@ Or clear specific agents:
221
221
  ```
222
222
  ff-agents-clear(id: "6ba7b810-9dad-11d1-80b4-00c04fd430c8")
223
223
  ff-agents-clear(sessionID: "session-abc123")
224
- ff-agents-clear(agent: "research")
224
+ ff-agents-clear(agent: "ff-research")
225
225
  ```
226
226
 
227
227
  ## Example: Planning with Parallel Research
@@ -249,7 +249,7 @@ ff-agents-clear(agent: "research")
249
249
 
250
250
  5. **Delegate in parallel**
251
251
  - Task(ff-security): "Audit OAuth..." (use $SECURITY_UUID)
252
- - Task(research): "Research OAuth..." (use $RESEARCH_UUID)
252
+ - Task(ff-research): "Research OAuth..." (use $RESEARCH_UUID)
253
253
  - Task(ff-acceptance): "Validate..." (use $ACCEPTANCE_UUID)
254
254
 
255
255
  6. **Update my context**
@@ -307,7 +307,7 @@ If specialized agents are unavailable:
307
307
  2. **@ff-review** → @general with code review focus
308
308
  3. **@ff-well-architected** → @general with architecture focus
309
309
  4. **@ff-acceptance** → @explore for requirements gathering
310
- 5. **@research** → @general with research focus
310
+ 5. **@ff-research** → @general with research focus
311
311
  6. **@explore** → @general with read-only tools
312
312
 
313
313
  When falling back, be more specific in your instructions to compensate for the generalist nature of @general.