farmwork 1.0.2 → 1.4.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 CHANGED
@@ -33,6 +33,7 @@ npx farmwork init
33
33
  4. **Autonomously Issue Tracking** - Using beads (`bd`) for full visibility
34
34
  5. **Living Audits** - Documents that track ongoing concerns
35
35
  6. **Plan & Implement** - You describe the outcome, the rest is handled, tracked and audited
36
+ 7. **Idea Garden & Compost** - Pre-plan creative stage with natural aging (ideas older than 60 days auto-compost)
36
37
 
37
38
  ### Phrase Commands
38
39
 
@@ -40,7 +41,7 @@ npx farmwork init
40
41
  | Phrase | Action |
41
42
  |--------|--------|
42
43
  | `open the farm` | Audit systems, update FARMHOUSE.md metrics |
43
- | `count the herd` | Full inspection + dry run (code review, performance, security, quality, accessibility) |
44
+ | `count the herd` | Full inspection and audit |
44
45
  | `go to market` | i18n translation check + accessibility audit |
45
46
  | `close the farm` | Full push workflow (lint, test, build, commit, push) |
46
47
 
@@ -50,6 +51,31 @@ npx farmwork init
50
51
  | `make a plan for...` | Create implementation plan in `_PLANS/` |
51
52
  | `let's implement...` | Execute plan with issue tracking |
52
53
 
54
+ **Idea Phrases** (Pre-Plan Stage):
55
+ | Phrase | Action |
56
+ |--------|--------|
57
+ | `I have an idea for...` | Add new idea to `_AUDIT/GARDEN.md` with planted date |
58
+ | `let's plan this idea...` | Graduate idea from GARDEN → create plan |
59
+ | `compost this...` | Move rejected idea to `_AUDIT/COMPOST.md` |
60
+ | `water the garden` | Generate 10 new ideas based on GARDEN and COMPOST |
61
+
62
+ **Idea Lifecycle:**
63
+ - **Fresh** (0-44 days) - New ideas ready to develop
64
+ - **Wilting** (45-60 days) - Ideas aging, marked ⚠️ during audits
65
+ - **Composted** (60+ days) - Auto-moved to COMPOST during "open the farm"
66
+
67
+ **Research Phrases** (Pre-Plan Stage):
68
+ | Phrase | Action |
69
+ |--------|--------|
70
+ | `let's research...` | Create or update research document in `_RESEARCH/` |
71
+ | `update research on...` | Refresh existing research with new findings |
72
+ | `show research on...` | Display research summary and staleness status |
73
+
74
+ **Research Lifecycle:**
75
+ - **Fresh** (0-14 days) - Research is current and reliable
76
+ - **Aging** (15-30 days) - Consider refreshing for major decisions
77
+ - **Stale** (30+ days) - Recommend updating before using for plans
78
+
53
79
  ### Slash Commands
54
80
 
55
81
  | Command | Description |
@@ -58,7 +84,7 @@ npx farmwork init
58
84
 
59
85
  ### Agents
60
86
 
61
- 10 specialized agents included:
87
+ 12 specialized agents included:
62
88
 
63
89
  | Agent | Purpose |
64
90
  |-------|---------|
@@ -72,14 +98,18 @@ npx farmwork init
72
98
  | `code-cleaner` | Remove comments and console.logs |
73
99
  | `i18n-locale-translator` | Translate UI text to locales |
74
100
  | `storybook-maintainer` | Create/update Storybook stories |
101
+ | `idea-gardener` | Manage Idea Garden and Compost |
102
+ | `researcher` | Systematic research before planning |
75
103
 
76
104
  ### Recommended Workflow
77
105
 
78
106
  1. **Start Session**: Run `open the farm` to audit current state
79
- 2. **Plan Work**: Use `make a plan for...` for new features
80
- 3. **Implement**: Use `let's implement...` to execute with tracking
81
- 4. **Quality Check**: Run `count the herd` for full audit + dry run
82
- 5. **Ship**: Run `close the farm` or `/push` to push changes
107
+ 2. **Capture Ideas**: Use `I have an idea for...` to plant ideas in GARDEN
108
+ 3. **Research**: Use `let's research...` to gather information before planning
109
+ 4. **Plan Work**: Use `make a plan for...` for new features
110
+ 5. **Implement**: Use `let's implement...` to execute with tracking
111
+ 6. **Quality Check**: Run `count the herd` for full audit + dry run
112
+ 7. **Ship**: Run `close the farm` or `/push` to push changes
83
113
 
84
114
  You can `go to market` when you have a production-ready app with international users.
85
115
 
@@ -89,7 +119,7 @@ You can `go to market` when you have a production-ready app with international u
89
119
  your-project/
90
120
  ├── CLAUDE.md # Main instructions & phrase commands
91
121
  ├── .claude/ # Claude Code configuration
92
- │ ├── agents/ # 10 specialized subagents
122
+ │ ├── agents/ # 12 specialized subagents
93
123
  │ │ ├── the-farmer.md
94
124
  │ │ ├── code-reviewer.md
95
125
  │ │ ├── security-auditor.md
@@ -99,7 +129,9 @@ your-project/
99
129
  │ │ ├── unused-code-cleaner.md
100
130
  │ │ ├── code-cleaner.md
101
131
  │ │ ├── i18n-locale-translator.md
102
- │ │ └── storybook-maintainer.md
132
+ │ │ ├── storybook-maintainer.md
133
+ │ │ ├── idea-gardener.md
134
+ │ │ └── researcher.md
103
135
  │ └── commands/ # User-invocable skills
104
136
  │ └── push.md
105
137
  ├── _AUDIT/ # Living audit documents
@@ -108,9 +140,13 @@ your-project/
108
140
  │ ├── PERFORMANCE.md # Performance metrics
109
141
  │ ├── ACCESSIBILITY.md # WCAG 2.1 compliance
110
142
  │ ├── CODE_QUALITY.md # Code quality tracking
111
- └── TESTS.md # Test coverage
143
+ ├── TESTS.md # Test coverage
144
+ │ ├── GARDEN.md # Idea nursery (pre-plan stage)
145
+ │ └── COMPOST.md # Rejected ideas archive
112
146
  ├── _PLANS/ # Implementation plans
113
147
  │ └── FEATURE_NAME.md
148
+ ├── _RESEARCH/ # Research documents (living docs)
149
+ │ └── TOPIC_NAME.md
114
150
  ├── .beads/ # Issue tracking
115
151
  └── justfile # Navigation commands
116
152
  ```
@@ -140,7 +176,7 @@ If you enable Storybook (for React/Vue projects), the wizard will also ask for:
140
176
  **Creates:**
141
177
  - `CLAUDE.md` - Main instructions and phrase commands
142
178
  - `.claude/` - Claude Code configuration directory
143
- - `agents/` - 10 specialized subagents
179
+ - `agents/` - 12 specialized subagents
144
180
  - `commands/` - 1 user-invocable skill (/push)
145
181
  - `_AUDIT/` - Living audit documents
146
182
  - `FARMHOUSE.md` - Framework command center
@@ -149,7 +185,10 @@ If you enable Storybook (for React/Vue projects), the wizard will also ask for:
149
185
  - `ACCESSIBILITY.md` - WCAG 2.1 compliance
150
186
  - `CODE_QUALITY.md` - Code quality tracking
151
187
  - `TESTS.md` - Test coverage tracking
188
+ - `GARDEN.md` - Idea nursery (pre-plan stage)
189
+ - `COMPOST.md` - Rejected ideas archive
152
190
  - `_PLANS/` - Implementation plans directory
191
+ - `_RESEARCH/` - Research documents directory
153
192
  - `justfile` - Navigation and task commands
154
193
 
155
194
  ### `farmwork status`
@@ -185,6 +224,7 @@ farmwork doctor
185
224
  - Core files (CLAUDE.md, .claude/, settings)
186
225
  - Agents and commands configuration
187
226
  - Audit system (_AUDIT/, FARMHOUSE.md, _PLANS/)
227
+ - Research system (_RESEARCH/)
188
228
  - Navigation (justfile, just command)
189
229
  - Issue tracking (beads)
190
230
  - Security (.gitignore settings)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "farmwork",
3
- "version": "1.0.2",
3
+ "version": "1.4.0",
4
4
  "type": "module",
5
5
  "description": "Farmwork - A workflow framework for Claude Code by Wynter Jones",
6
6
  "main": "src/index.js",
package/src/doctor.js CHANGED
@@ -163,23 +163,44 @@ export async function doctor() {
163
163
  checkExists(path.join(cwd, "_PLANS"), "_PLANS/ directory exists"),
164
164
  );
165
165
 
166
+ // Research System
167
+ checks.push({ category: "Research System", emoji: "🔬", items: [] });
168
+ checks[3].items.push(
169
+ checkExists(path.join(cwd, "_RESEARCH"), "_RESEARCH/ directory exists"),
170
+ );
171
+
172
+ // Office System
173
+ checks.push({ category: "Office System", emoji: "🏢", items: [] });
174
+ checks[4].items.push(
175
+ checkExists(path.join(cwd, "_OFFICE"), "_OFFICE/ directory exists"),
176
+ );
177
+ checks[4].items.push(
178
+ checkExists(path.join(cwd, "_OFFICE", "CORE_LOOP.md"), "CORE_LOOP.md exists"),
179
+ );
180
+ checks[4].items.push(
181
+ checkExists(path.join(cwd, "_OFFICE", "ONBOARDING.md"), "ONBOARDING.md exists"),
182
+ );
183
+ checks[4].items.push(
184
+ checkExists(path.join(cwd, "_OFFICE", "USER_GUIDE.md"), "USER_GUIDE.md exists"),
185
+ );
186
+
166
187
  // Navigation
167
188
  checks.push({ category: "Navigation", emoji: "🐓", items: [] });
168
- checks[3].items.push(
189
+ checks[5].items.push(
169
190
  checkExists(path.join(cwd, "justfile"), "justfile exists"),
170
191
  );
171
- checks[3].items.push(checkCommand("just", "just command available"));
192
+ checks[5].items.push(checkCommand("just", "just command available"));
172
193
 
173
194
  // Issue Tracking
174
195
  checks.push({ category: "Issue Tracking", emoji: "🐷", items: [] });
175
- checks[4].items.push(
196
+ checks[6].items.push(
176
197
  checkExists(path.join(cwd, ".beads"), ".beads/ directory exists"),
177
198
  );
178
- checks[4].items.push(checkCommand("bd", "bd (beads) command available"));
199
+ checks[6].items.push(checkCommand("bd", "bd (beads) command available"));
179
200
 
180
201
  // Security
181
202
  checks.push({ category: "Security", emoji: "🐕", items: [] });
182
- checks[5].items.push(checkGitignore(cwd));
203
+ checks[7].items.push(checkGitignore(cwd));
183
204
 
184
205
  let totalPassed = 0;
185
206
  let totalFailed = 0;