company-skill 1.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/COMPANY.md.template +76 -0
- package/LICENSE +21 -0
- package/README.md +190 -0
- package/agents/company-critic.md +8 -0
- package/agents/company-digest.md +8 -0
- package/agents/company-lead.md +8 -0
- package/agents/company-reviewer.md +8 -0
- package/agents/company-worker.md +8 -0
- package/bin/install.js +89 -0
- package/commands/resume.md +17 -0
- package/commands/run.md +22 -0
- package/commands/status.md +10 -0
- package/examples/dev-team.md +27 -0
- package/examples/nexusquant.md +67 -0
- package/examples/research-lab.md +24 -0
- package/examples/startup.md +29 -0
- package/hooks/stop-guard.js +51 -0
- package/install.sh +37 -0
- package/package.json +15 -0
- package/skill/SKILL.md +381 -0
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
# My Company
|
|
2
|
+
|
|
3
|
+
<!--
|
|
4
|
+
INSTRUCTIONS:
|
|
5
|
+
1. Rename this file to COMPANY.md
|
|
6
|
+
2. Fill in your departments and roles
|
|
7
|
+
3. Add/remove departments as needed
|
|
8
|
+
4. Add/remove roles as needed, no limit
|
|
9
|
+
5. Run /company in Claude Code
|
|
10
|
+
|
|
11
|
+
TIPS:
|
|
12
|
+
- First role in each department (or marked "Lead:") becomes the department lead
|
|
13
|
+
- Add [opus], [sonnet], or [haiku] to override model per role
|
|
14
|
+
- Default: leads use Opus (deep thinking), workers use Sonnet (execution)
|
|
15
|
+
- Add as many departments and roles as you want
|
|
16
|
+
-->
|
|
17
|
+
|
|
18
|
+
## Engineering (Lead: CTO)
|
|
19
|
+
- CTO, technical decisions, architecture, code review
|
|
20
|
+
- Backend Developer, API design, database, business logic
|
|
21
|
+
- Frontend Developer, UI components, state management
|
|
22
|
+
- DevOps Engineer, CI/CD, infrastructure, monitoring
|
|
23
|
+
<!-- Add more engineering roles here -->
|
|
24
|
+
|
|
25
|
+
## Research (Lead: Research Director)
|
|
26
|
+
- Research Director, research strategy, paper writing
|
|
27
|
+
- ML Scientist, experiments, model analysis
|
|
28
|
+
- Data Engineer, data pipelines, preprocessing
|
|
29
|
+
<!-- Add more research roles here -->
|
|
30
|
+
|
|
31
|
+
## Quality (Lead: QA Lead)
|
|
32
|
+
- QA Lead, test strategy, release validation
|
|
33
|
+
- Security Reviewer, vulnerability analysis, dependency audit
|
|
34
|
+
- Code Reviewer, style, patterns, best practices
|
|
35
|
+
<!-- Add more quality roles here -->
|
|
36
|
+
|
|
37
|
+
## Product (Lead: Product Manager)
|
|
38
|
+
- Product Manager, specs, roadmap, user stories
|
|
39
|
+
- Designer, UI/UX, mockups, prototypes
|
|
40
|
+
<!-- Add more product roles here -->
|
|
41
|
+
|
|
42
|
+
## Scouts (Lead: Scout Lead)
|
|
43
|
+
- Scout Lead, competitive intelligence coordination
|
|
44
|
+
- GitHub Scout, scan for new tools, libraries, competitors
|
|
45
|
+
- Industry Scout, track market trends, announcements
|
|
46
|
+
<!-- Add more scout roles here -->
|
|
47
|
+
|
|
48
|
+
<!--
|
|
49
|
+
ADD MORE DEPARTMENTS:
|
|
50
|
+
|
|
51
|
+
## Marketing (Lead: Marketing Lead)
|
|
52
|
+
- Marketing Lead, growth strategy
|
|
53
|
+
- Content Writer, blog posts, documentation
|
|
54
|
+
- SEO Specialist, search optimization
|
|
55
|
+
|
|
56
|
+
## Finance (Lead: CFO)
|
|
57
|
+
- CFO, budget, forecasting
|
|
58
|
+
- Financial Analyst, metrics, reporting
|
|
59
|
+
|
|
60
|
+
## Legal (Lead: Legal Counsel)
|
|
61
|
+
- Legal Counsel, contracts, IP, compliance
|
|
62
|
+
- Patent Attorney, patent strategy, filing
|
|
63
|
+
-->
|
|
64
|
+
|
|
65
|
+
## Priorities
|
|
66
|
+
<!-- List what the company should work on. Tag with [URGENT], [IMPORTANT], or [RESEARCH] -->
|
|
67
|
+
1. [URGENT] <!-- Your most urgent task -->
|
|
68
|
+
2. [IMPORTANT] <!-- Important but not blocking -->
|
|
69
|
+
3. [RESEARCH] <!-- Background investigation -->
|
|
70
|
+
|
|
71
|
+
## Rules
|
|
72
|
+
<!-- Define quality gates and approval workflows -->
|
|
73
|
+
- No code ships without QA Lead sign-off
|
|
74
|
+
- Security Reviewer must approve anything touching auth or payments
|
|
75
|
+
- All findings need at least one reviewer before being accepted
|
|
76
|
+
<!-- Add more rules here -->
|
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 jagmarques
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
# Company
|
|
2
|
+
|
|
3
|
+
Give it a goal. The whole company works until it's done.
|
|
4
|
+
|
|
5
|
+
```
|
|
6
|
+
/company "Build the user auth system with OAuth2"
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
A Claude Code skill that reads your team structure from `COMPANY.md`, runs every employee in loops, and doesn't stop until built-in reviewers verify the goal is met.
|
|
10
|
+
|
|
11
|
+
## Install
|
|
12
|
+
|
|
13
|
+
npm:
|
|
14
|
+
```bash
|
|
15
|
+
npx company-skill install
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
Or from git:
|
|
19
|
+
```bash
|
|
20
|
+
curl -sL https://raw.githubusercontent.com/jagmarques/company-skill/main/install.sh | bash
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
Edit `COMPANY.md` with your team. Or skip it, the skill creates a minimal company automatically.
|
|
24
|
+
|
|
25
|
+
## How It Works
|
|
26
|
+
|
|
27
|
+
```
|
|
28
|
+
GOAL: "Build the auth system"
|
|
29
|
+
|
|
30
|
+
THINK Leads break the goal into tasks
|
|
31
|
+
EXECUTE Employees do the work
|
|
32
|
+
VERIFY Built-in Reviewer + Critic check if the goal is met
|
|
33
|
+
|
|
34
|
+
Not done? Loop back with feedback on what's missing.
|
|
35
|
+
Done? Write STATUS.md, report to user.
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
No arbitrary limit. The loop runs until the objective is verified done.
|
|
39
|
+
|
|
40
|
+
## Built-In Roles
|
|
41
|
+
|
|
42
|
+
Every company gets these employees automatically, even if your COMPANY.md is empty:
|
|
43
|
+
|
|
44
|
+
| Role | Phase | What they do |
|
|
45
|
+
|------|-------|-------------|
|
|
46
|
+
| CEO | THINK | Sets priorities, resolves conflicts |
|
|
47
|
+
| CTO | THINK | Technical decisions, architecture |
|
|
48
|
+
| Internal Reviewer | VERIFY | Checks work against goal criteria |
|
|
49
|
+
| User Advocate | VERIFY | Represents the end user |
|
|
50
|
+
| Devil's Advocate | VERIFY | Attacks results, finds holes |
|
|
51
|
+
| Elegance Enforcer | VERIFY | Prevents over-engineering |
|
|
52
|
+
|
|
53
|
+
If you define these roles in COMPANY.md, the skill uses your description instead. No duplicates.
|
|
54
|
+
|
|
55
|
+
A minimal `/company "fix the login bug"` with no COMPANY.md runs: CEO + CTO + 2 auto-created engineers + 4 built-in reviewers = 8 employees.
|
|
56
|
+
|
|
57
|
+
## Write Your Company
|
|
58
|
+
|
|
59
|
+
`COMPANY.md` adds your own employees on top of the built-ins:
|
|
60
|
+
|
|
61
|
+
```markdown
|
|
62
|
+
# My Team
|
|
63
|
+
|
|
64
|
+
## Executive (Lead: CEO)
|
|
65
|
+
- CEO, product vision, customer focus
|
|
66
|
+
- CTO, architecture, technical standards
|
|
67
|
+
|
|
68
|
+
## Engineering (Lead: CTO)
|
|
69
|
+
- Backend Developer, API, database
|
|
70
|
+
- Frontend Developer, UI, components
|
|
71
|
+
- DevOps Engineer, CI/CD, monitoring
|
|
72
|
+
|
|
73
|
+
## Priorities
|
|
74
|
+
1. [URGENT] Fix payment processing
|
|
75
|
+
2. [IMPORTANT] Add user dashboard
|
|
76
|
+
|
|
77
|
+
## Rules
|
|
78
|
+
- No deploy without review
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
## Commands
|
|
82
|
+
|
|
83
|
+
```
|
|
84
|
+
/company "Build X" Run the company until X is done
|
|
85
|
+
/company Run using priorities from COMPANY.md
|
|
86
|
+
/company:run "Build X" Same as /company "Build X"
|
|
87
|
+
/company:status Show last status without running
|
|
88
|
+
/company:resume Continue from where last session stopped
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
Installs globally. Works from any directory.
|
|
92
|
+
|
|
93
|
+
## Visual Indicators
|
|
94
|
+
|
|
95
|
+
When the skill runs, you see:
|
|
96
|
+
|
|
97
|
+
```
|
|
98
|
+
════════════════════════════════════════════════
|
|
99
|
+
🏢 COMPANY SKILL ACTIVE
|
|
100
|
+
════════════════════════════════════════════════
|
|
101
|
+
|
|
102
|
+
════════════════════════════════════════════════
|
|
103
|
+
🏢 CYCLE 1 - THINK > EXECUTE > VERIFY
|
|
104
|
+
════════════════════════════════════════════════
|
|
105
|
+
|
|
106
|
+
📋 CYCLE 1 VERDICT: NOT DONE
|
|
107
|
+
Missing validation of compression ratios
|
|
108
|
+
|
|
109
|
+
════════════════════════════════════════════════
|
|
110
|
+
🏢 CYCLE 2 - THINK > EXECUTE > VERIFY
|
|
111
|
+
════════════════════════════════════════════════
|
|
112
|
+
|
|
113
|
+
📋 CYCLE 2 VERDICT: DONE
|
|
114
|
+
All success criteria met
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
Employees show with colors: leads (cyan), workers (green), reviewers (yellow), digest (gray). Skills are mandatory when installed.
|
|
118
|
+
|
|
119
|
+
## Agents
|
|
120
|
+
|
|
121
|
+
| Agent | Phase | Color | Role |
|
|
122
|
+
|-------|-------|-------|------|
|
|
123
|
+
| company-lead | THINK | Blue | Department leads, deciding what to do |
|
|
124
|
+
| company-worker | EXECUTE | Green | Employees doing the actual work |
|
|
125
|
+
| company-reviewer | VERIFY | Yellow | Internal Reviewer, checking quality |
|
|
126
|
+
| company-critic | VERIFY | Yellow | Devil's Advocate, finding holes |
|
|
127
|
+
| company-digest | COMPRESS | Gray | Compresses output between cycles |
|
|
128
|
+
|
|
129
|
+
## Model Assignment
|
|
130
|
+
|
|
131
|
+
| Phase | Model | Who |
|
|
132
|
+
|-------|-------|-----|
|
|
133
|
+
| THINK | Opus | CEO, CTO, department leads |
|
|
134
|
+
| EXECUTE | Sonnet | Engineers, researchers, scouts |
|
|
135
|
+
| VERIFY | Opus | Reviewer, Advocate, Enforcer, User Advocate |
|
|
136
|
+
| COMPRESS | Haiku | Digest writer between cycles |
|
|
137
|
+
|
|
138
|
+
Override per employee: `- ML Scientist, experiments [opus]`
|
|
139
|
+
|
|
140
|
+
## Installed Skills
|
|
141
|
+
|
|
142
|
+
Auto-installed on first run:
|
|
143
|
+
|
|
144
|
+
| Pack | What employees get |
|
|
145
|
+
|------|-------------------|
|
|
146
|
+
| gstack | /review, /ship, /qa, /investigate, /browse, /office-hours |
|
|
147
|
+
| GSD | /gsd:plan-phase, /gsd:execute-phase, /gsd:verify-work, /gsd:debug |
|
|
148
|
+
| trailofbits | Security audit, vulnerability detection |
|
|
149
|
+
| claude-mem | Persistent memory compression across sessions |
|
|
150
|
+
| oh-my-claudecode | Team orchestration, 32 specialized employees, autopilot |
|
|
151
|
+
|
|
152
|
+
Install manually for more:
|
|
153
|
+
|
|
154
|
+
```
|
|
155
|
+
/plugin marketplace add obra/superpowers-marketplace
|
|
156
|
+
/plugin marketplace add wshobson/agents
|
|
157
|
+
/plugin marketplace add alirezarezvani/claude-skills
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
When installed, employees MUST use them. Raw tools only when no skill matches the task.
|
|
161
|
+
|
|
162
|
+
## What Gets Created
|
|
163
|
+
|
|
164
|
+
```
|
|
165
|
+
.company/
|
|
166
|
+
GOAL.md
|
|
167
|
+
STATUS.md
|
|
168
|
+
memory/{dept}.json
|
|
169
|
+
messages/{dept}.jsonl
|
|
170
|
+
cycles/
|
|
171
|
+
cycle-0-briefing.md
|
|
172
|
+
cycle-1-think-{dept}.md
|
|
173
|
+
cycle-1-review.md
|
|
174
|
+
cycle-1-advocate.md
|
|
175
|
+
cycle-1-briefing.md
|
|
176
|
+
{dept}/{employee}.md
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
## Examples
|
|
180
|
+
|
|
181
|
+
| File | Team |
|
|
182
|
+
|------|------|
|
|
183
|
+
| [`startup.md`](examples/startup.md) | 10-person startup |
|
|
184
|
+
| [`research-lab.md`](examples/research-lab.md) | Academic group |
|
|
185
|
+
| [`dev-team.md`](examples/dev-team.md) | Dev sprint |
|
|
186
|
+
| [`nexusquant.md`](examples/nexusquant.md) | Full research company |
|
|
187
|
+
|
|
188
|
+
## License
|
|
189
|
+
|
|
190
|
+
MIT
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: company-critic
|
|
3
|
+
description: Devil's Advocate for /company skill. Attacks results, finds holes, prevents premature completion.
|
|
4
|
+
tools: Read, Write, Bash, Grep, Glob, WebSearch
|
|
5
|
+
color: yellow
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
You are the Devil's Advocate. Attack every result. Find holes. Ask what could go wrong. Only accept when there are zero remaining gaps.
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: company-digest
|
|
3
|
+
description: Digest writer for /company skill. Compresses cycle output into next cycle's briefing.
|
|
4
|
+
tools: Read, Write, Glob, Grep
|
|
5
|
+
color: gray
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
You are the Digest Writer. Read all cycle output, compress into the next briefing. Keep priority 4-5 findings in full, summarize the rest.
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: company-lead
|
|
3
|
+
description: Department lead for /company skill. Analyzes priorities, assigns tasks to employees, synthesizes findings.
|
|
4
|
+
tools: Read, Write, Edit, Bash, Grep, Glob, Agent, WebSearch, WebFetch, Skill
|
|
5
|
+
color: cyan
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
You are a department lead spawned by the /company skill. Read your briefing, assign tasks to your team, collect results, write your department report.
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: company-reviewer
|
|
3
|
+
description: Internal Reviewer for /company skill. Checks if work meets the goal. Grades each criterion as MET/NOT MET.
|
|
4
|
+
tools: Read, Write, Bash, Grep, Glob
|
|
5
|
+
color: yellow
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
You are the Internal Reviewer. Check all work against the goal's success criteria. Grade each as MET / NOT MET / PARTIALLY MET. Write your verdict.
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: company-worker
|
|
3
|
+
description: Employee executing a specific task for /company skill. Does the actual work assigned by a lead.
|
|
4
|
+
tools: Read, Write, Edit, Bash, Grep, Glob, WebSearch, WebFetch, Skill
|
|
5
|
+
color: green
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
You are an employee spawned by a department lead. Execute your assigned task, write findings, rate importance 1-5.
|
package/bin/install.js
ADDED
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
const fs = require('fs');
|
|
4
|
+
const path = require('path');
|
|
5
|
+
const os = require('os');
|
|
6
|
+
|
|
7
|
+
const home = os.homedir();
|
|
8
|
+
const skillDir = path.join(home, '.claude', 'skills', 'company');
|
|
9
|
+
const commandsDir = path.join(home, '.claude', 'commands', 'company');
|
|
10
|
+
const agentsDir = path.join(home, '.claude', 'agents');
|
|
11
|
+
const hooksDir = path.join(home, '.claude', 'hooks');
|
|
12
|
+
const srcDir = path.dirname(__dirname);
|
|
13
|
+
|
|
14
|
+
function copyFile(src, dest) {
|
|
15
|
+
fs.mkdirSync(path.dirname(dest), { recursive: true });
|
|
16
|
+
fs.copyFileSync(src, dest);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
// Install skill
|
|
20
|
+
copyFile(path.join(srcDir, 'skill', 'SKILL.md'), path.join(skillDir, 'SKILL.md'));
|
|
21
|
+
|
|
22
|
+
// Install commands
|
|
23
|
+
for (const cmd of ['run', 'status', 'resume']) {
|
|
24
|
+
const src = path.join(srcDir, 'commands', `${cmd}.md`);
|
|
25
|
+
if (fs.existsSync(src)) copyFile(src, path.join(commandsDir, `${cmd}.md`));
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
// Install agents
|
|
29
|
+
for (const agent of ['lead', 'worker', 'reviewer', 'critic', 'digest']) {
|
|
30
|
+
const src = path.join(srcDir, 'agents', `company-${agent}.md`);
|
|
31
|
+
if (fs.existsSync(src)) copyFile(src, path.join(agentsDir, `company-${agent}.md`));
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
// Install stop hook
|
|
35
|
+
const hookSrc = path.join(srcDir, 'hooks', 'stop-guard.js');
|
|
36
|
+
if (fs.existsSync(hookSrc)) {
|
|
37
|
+
copyFile(hookSrc, path.join(hooksDir, 'company-stop-guard.js'));
|
|
38
|
+
|
|
39
|
+
// Add to settings.json Stop hooks
|
|
40
|
+
const settingsPath = path.join(home, '.claude', 'settings.json');
|
|
41
|
+
try {
|
|
42
|
+
const settings = fs.existsSync(settingsPath)
|
|
43
|
+
? JSON.parse(fs.readFileSync(settingsPath, 'utf8'))
|
|
44
|
+
: {};
|
|
45
|
+
|
|
46
|
+
if (!settings.hooks) settings.hooks = {};
|
|
47
|
+
if (!settings.hooks.Stop) settings.hooks.Stop = [];
|
|
48
|
+
|
|
49
|
+
const hookCmd = `node "${path.join(hooksDir, 'company-stop-guard.js')}"`;
|
|
50
|
+
const exists = settings.hooks.Stop.some(h =>
|
|
51
|
+
h.hooks && h.hooks.some(hh => hh.command && hh.command.includes('company-stop-guard'))
|
|
52
|
+
);
|
|
53
|
+
|
|
54
|
+
if (!exists) {
|
|
55
|
+
settings.hooks.Stop.push({
|
|
56
|
+
hooks: [{
|
|
57
|
+
type: 'command',
|
|
58
|
+
command: hookCmd,
|
|
59
|
+
timeout: 5
|
|
60
|
+
}]
|
|
61
|
+
});
|
|
62
|
+
fs.writeFileSync(settingsPath, JSON.stringify(settings, null, 2));
|
|
63
|
+
console.log('Stop hook installed: company will not stop until goal is achieved.');
|
|
64
|
+
}
|
|
65
|
+
} catch (e) {
|
|
66
|
+
console.log('Could not install stop hook (optional). Add manually to settings.json.');
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
// Create COMPANY.md template in cwd if missing
|
|
71
|
+
const companyMd = path.join(process.cwd(), 'COMPANY.md');
|
|
72
|
+
const template = path.join(srcDir, 'COMPANY.md.template');
|
|
73
|
+
if (!fs.existsSync(companyMd) && fs.existsSync(template)) {
|
|
74
|
+
fs.copyFileSync(template, companyMd);
|
|
75
|
+
console.log('Created COMPANY.md template. Edit it with your team.');
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
// Add .company/ to .gitignore
|
|
79
|
+
const gitignore = path.join(process.cwd(), '.gitignore');
|
|
80
|
+
try {
|
|
81
|
+
const content = fs.existsSync(gitignore) ? fs.readFileSync(gitignore, 'utf8') : '';
|
|
82
|
+
if (!content.includes('.company/')) {
|
|
83
|
+
fs.appendFileSync(gitignore, '\n.company/\n');
|
|
84
|
+
}
|
|
85
|
+
} catch (e) {}
|
|
86
|
+
|
|
87
|
+
console.log('company-skill installed globally.');
|
|
88
|
+
console.log('Commands: /company, /company:run, /company:status, /company:resume');
|
|
89
|
+
console.log('To cancel a running company: touch .company/CANCEL');
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: company:resume
|
|
3
|
+
description: Resume company from where last session stopped
|
|
4
|
+
allowed-tools:
|
|
5
|
+
- Read
|
|
6
|
+
- Write
|
|
7
|
+
- Edit
|
|
8
|
+
- Bash
|
|
9
|
+
- Grep
|
|
10
|
+
- Glob
|
|
11
|
+
- Agent
|
|
12
|
+
- WebSearch
|
|
13
|
+
- WebFetch
|
|
14
|
+
- Skill
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
Resume the company from previous session. Read .company/STATUS.md, .company/GOAL.md, and the latest cycle briefing in .company/cycles/. Continue the THINK > EXECUTE > VERIFY loop from where it left off. Follow ~/.claude/skills/company/SKILL.md instructions.
|
package/commands/run.md
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: company:run
|
|
3
|
+
description: Run the full company on a goal. Reads COMPANY.md, launches all employees in cycles until the goal is verified done.
|
|
4
|
+
argument-hint: "<goal>"
|
|
5
|
+
allowed-tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Write
|
|
8
|
+
- Edit
|
|
9
|
+
- Bash
|
|
10
|
+
- Grep
|
|
11
|
+
- Glob
|
|
12
|
+
- Agent
|
|
13
|
+
- WebSearch
|
|
14
|
+
- WebFetch
|
|
15
|
+
- Skill
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
Run the /company skill with the provided goal. Read ~/.claude/skills/company/SKILL.md for the full orchestration instructions and follow them exactly.
|
|
19
|
+
|
|
20
|
+
The goal is: $ARGUMENTS
|
|
21
|
+
|
|
22
|
+
If no goal provided, read COMPANY.md priorities section.
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: company:status
|
|
3
|
+
description: Show current company status without running a cycle
|
|
4
|
+
allowed-tools:
|
|
5
|
+
- Read
|
|
6
|
+
- Bash
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
Read and display .company/STATUS.md if it exists. If not, say no company has run yet.
|
|
10
|
+
Also show .company/GOAL.md and the latest cycle briefing if they exist.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# Development Team, Feature Sprint
|
|
2
|
+
|
|
3
|
+
## Backend (Lead: Tech Lead)
|
|
4
|
+
- Tech Lead, architecture, PR reviews, technical decisions
|
|
5
|
+
- Backend Dev A, API endpoints, business logic
|
|
6
|
+
- Backend Dev B, database, migrations, caching
|
|
7
|
+
- DevOps, deployment, monitoring, CI/CD
|
|
8
|
+
|
|
9
|
+
## Frontend (Lead: Frontend Lead)
|
|
10
|
+
- Frontend Lead, component architecture, state management
|
|
11
|
+
- Frontend Dev A, pages, routing, forms
|
|
12
|
+
- Frontend Dev B, design system, accessibility
|
|
13
|
+
|
|
14
|
+
## Quality (Lead: QA Engineer)
|
|
15
|
+
- QA Engineer, test plans, E2E tests, regression
|
|
16
|
+
- Security Reviewer, OWASP checks, dependency audit
|
|
17
|
+
|
|
18
|
+
## Priorities
|
|
19
|
+
1. [URGENT] Fix production 500 errors on /api/checkout
|
|
20
|
+
2. [URGENT] Deploy hotfix for payment gateway timeout
|
|
21
|
+
3. [IMPORTANT] Implement user dashboard redesign
|
|
22
|
+
4. [RESEARCH] Evaluate migration from REST to GraphQL
|
|
23
|
+
|
|
24
|
+
## Rules
|
|
25
|
+
- All PRs need Tech Lead or Frontend Lead approval
|
|
26
|
+
- Security Reviewer must approve anything touching auth or payments
|
|
27
|
+
- QA Engineer runs E2E suite before every deploy
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# NexusQuant, 40 Person AI Research Company
|
|
2
|
+
|
|
3
|
+
## Executive (Lead: CEO)
|
|
4
|
+
- CEO, coordinates all departments, sets priorities, resolves conflicts
|
|
5
|
+
- CTO, experiments, code, pipeline optimization
|
|
6
|
+
|
|
7
|
+
## Research Institute (Lead: Research Director)
|
|
8
|
+
- Research Director, directs ALL research, competition tracking
|
|
9
|
+
- Information Theorist, rate-distortion theory, Shannon bounds
|
|
10
|
+
- Lattice Mathematician, E8/Leech/D4 lattices, coset coding
|
|
11
|
+
- Algebraic Geometer, Grassmannian manifolds, flag varieties
|
|
12
|
+
- Differential Geometer, Riemannian optimization, geodesics
|
|
13
|
+
- Optimization Theorist, Fisher geometry, optimal transport
|
|
14
|
+
- Physics Researcher, RG multi-scale, tensor networks, RMT
|
|
15
|
+
- Coding Theorist, turbo codes, LDPC, polar codes, TCQ
|
|
16
|
+
- Attention Theorist, attention output preservation, gisting
|
|
17
|
+
- Topologist, persistent homology, topological data analysis
|
|
18
|
+
- Category Theorist, functorial compression, natural transformations
|
|
19
|
+
- Probabilistic Geometer, variational compression, info geometry
|
|
20
|
+
- Random Matrix Theorist, Marchenko-Pastur, BBP, shrinkage
|
|
21
|
+
- Number Theorist, algebraic number theory, ideal lattices
|
|
22
|
+
- Harmonic Analyst, wavelet compression, time-frequency analysis
|
|
23
|
+
|
|
24
|
+
## Core Engineering (Lead: CTO)
|
|
25
|
+
- Benchmark Engineer, GPU experiments, numbers, validation
|
|
26
|
+
- Numerical Stability Engineer, RoPE, PCA math, mixed precision
|
|
27
|
+
- Triton Kernel Engineer, vendor-independent GPU kernels
|
|
28
|
+
- Systems Engineer, cloud infrastructure, deployment
|
|
29
|
+
|
|
30
|
+
## Applied Research (Lead: Research Director)
|
|
31
|
+
- K-V Cross-Prediction Specialist, K/V correlation exploitation
|
|
32
|
+
- Attention-Output Compressor, compress softmax(QK^T)V directly
|
|
33
|
+
- Multi-Model Adaptation Engineer, per-architecture optimization
|
|
34
|
+
- Temporal Dynamics Researcher, Kalman filtering, state-space models
|
|
35
|
+
|
|
36
|
+
## Quality Gate (Lead: Chief Critic)
|
|
37
|
+
- Chief Critic, validates skeptically, veto power on all claims
|
|
38
|
+
- Statistical Reviewer, p-values, CIs, methodology validation
|
|
39
|
+
- Devil's Advocate, hostile NeurIPS Reviewer 2, attacks every claim
|
|
40
|
+
- Elegance Enforcer, kills over-engineering, champions simplicity
|
|
41
|
+
- User Advocate, represents end users, tests API usability
|
|
42
|
+
- Momentum Coach, prevents stalling, keeps energy high
|
|
43
|
+
|
|
44
|
+
## Paper & IP (Lead: Paper Lead)
|
|
45
|
+
- Paper Lead, draft, prose, NeurIPS 2026 submission
|
|
46
|
+
- Patent Counsel, claims, FTO, filing strategy
|
|
47
|
+
- Figure Designer, publication-quality figures
|
|
48
|
+
|
|
49
|
+
## Scouts (Lead: Scout Lead)
|
|
50
|
+
- GitHub Scout, daily scan for new implementations
|
|
51
|
+
- arXiv Scout, daily scan for new papers
|
|
52
|
+
- Industry Scout, track vLLM, TensorRT, HuggingFace, Ollama
|
|
53
|
+
|
|
54
|
+
## Priorities
|
|
55
|
+
1. [URGENT] Validate 5.68x compression on Mistral-7B GPU
|
|
56
|
+
2. [URGENT] Implement optimal eigenvalue shrinkage (ScreeNOT)
|
|
57
|
+
3. [IMPORTANT] Build conditional entropy coder for E8 indices
|
|
58
|
+
4. [IMPORTANT] Cross-layer prediction with E8 residual VQ
|
|
59
|
+
5. [RESEARCH] Study CommVQ RoPE-commutative codebooks
|
|
60
|
+
6. [RESEARCH] Polar-inspired progressive E8 coding
|
|
61
|
+
|
|
62
|
+
## Rules
|
|
63
|
+
- NO result enters paper without Chief Critic + Statistical Reviewer sign-off (2/2)
|
|
64
|
+
- Every compression ratio includes ALL overhead (scales, PCA basis, metadata)
|
|
65
|
+
- If a number looks too good, validate deeply before celebrating
|
|
66
|
+
- Devil's Advocate attacks every claim before paper inclusion
|
|
67
|
+
- Elegance Enforcer vetoes any component that adds complexity without >0.1% gain
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# Research Lab, Academic Group
|
|
2
|
+
|
|
3
|
+
## Theory (Lead: Principal Investigator)
|
|
4
|
+
- Principal Investigator, research direction, paper strategy
|
|
5
|
+
- Postdoc A, core algorithm design, proofs
|
|
6
|
+
- Postdoc B, experiments, benchmarks
|
|
7
|
+
- PhD Student, literature review, implementation
|
|
8
|
+
|
|
9
|
+
## Review (Lead: Internal Reviewer)
|
|
10
|
+
- Internal Reviewer, methodology validation, statistical checks
|
|
11
|
+
- Writing Coach, prose quality, clarity, structure
|
|
12
|
+
|
|
13
|
+
## Scouts (Lead: Literature Scout)
|
|
14
|
+
- Literature Scout, daily arxiv scan, related work tracking
|
|
15
|
+
|
|
16
|
+
## Priorities
|
|
17
|
+
1. [URGENT] Finish experiments for ICML deadline
|
|
18
|
+
2. [IMPORTANT] Address Reviewer 2's comments on rebuttal
|
|
19
|
+
3. [RESEARCH] Survey new baselines published this month
|
|
20
|
+
|
|
21
|
+
## Rules
|
|
22
|
+
- No number enters the paper without Internal Reviewer sign-off
|
|
23
|
+
- Every claim needs a reproducible experiment
|
|
24
|
+
- PI reviews all writing before submission
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Startup, 10 Person Team
|
|
2
|
+
|
|
3
|
+
## Product (Lead: CEO)
|
|
4
|
+
- CEO, product vision, customer interviews, prioritization
|
|
5
|
+
- Product Manager, specs, user stories, roadmap
|
|
6
|
+
|
|
7
|
+
## Engineering (Lead: CTO)
|
|
8
|
+
- CTO, architecture, code review, technical decisions
|
|
9
|
+
- Senior Backend, API design, database, auth
|
|
10
|
+
- Senior Frontend, UI/UX implementation, components
|
|
11
|
+
- Junior Fullstack, features, bug fixes
|
|
12
|
+
|
|
13
|
+
## Design (Lead: Design Lead)
|
|
14
|
+
- Design Lead, design system, user research
|
|
15
|
+
- UI Designer, mockups, prototypes
|
|
16
|
+
|
|
17
|
+
## Quality (Lead: QA Lead)
|
|
18
|
+
- QA Lead, test strategy, release validation
|
|
19
|
+
- Marketing, landing page, content, growth
|
|
20
|
+
|
|
21
|
+
## Priorities
|
|
22
|
+
1. [URGENT] Ship MVP by end of week
|
|
23
|
+
2. [IMPORTANT] Set up CI/CD pipeline
|
|
24
|
+
3. [RESEARCH] Evaluate auth providers (Clerk vs Auth0 vs Supabase)
|
|
25
|
+
|
|
26
|
+
## Rules
|
|
27
|
+
- No PR merges without CTO review
|
|
28
|
+
- QA Lead must sign off on every release
|
|
29
|
+
- Design Lead reviews all UI changes
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Stop Hook Guard for /company skill.
|
|
5
|
+
*
|
|
6
|
+
* Blocks Claude from stopping until the goal is verified done.
|
|
7
|
+
* Stolen from oh-my-claudecode's persistent-mode pattern.
|
|
8
|
+
*
|
|
9
|
+
* Install: Add to settings.json hooks.Stop
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
const fs = require('fs');
|
|
13
|
+
const path = require('path');
|
|
14
|
+
|
|
15
|
+
// Check if company skill is active
|
|
16
|
+
const goalPath = path.join(process.cwd(), '.company', 'GOAL.md');
|
|
17
|
+
const statusPath = path.join(process.cwd(), '.company', 'STATUS.md');
|
|
18
|
+
|
|
19
|
+
if (!fs.existsSync(goalPath)) {
|
|
20
|
+
// Company not running, allow stop
|
|
21
|
+
process.exit(0);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
// Check if goal is achieved
|
|
25
|
+
if (fs.existsSync(statusPath)) {
|
|
26
|
+
const status = fs.readFileSync(statusPath, 'utf8');
|
|
27
|
+
if (status.includes('ACHIEVED') || status.includes('DONE')) {
|
|
28
|
+
// Goal achieved, allow stop
|
|
29
|
+
process.exit(0);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
// Check for cancel signal
|
|
34
|
+
const cancelPath = path.join(process.cwd(), '.company', 'CANCEL');
|
|
35
|
+
if (fs.existsSync(cancelPath)) {
|
|
36
|
+
fs.unlinkSync(cancelPath);
|
|
37
|
+
process.exit(0);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
// Goal not achieved, block stop and continue
|
|
41
|
+
const goal = fs.readFileSync(goalPath, 'utf8');
|
|
42
|
+
const output = {
|
|
43
|
+
continue: false,
|
|
44
|
+
stopReason: "Company goal not yet achieved. Continuing cycles.",
|
|
45
|
+
hookSpecificOutput: {
|
|
46
|
+
hookEventName: "Stop",
|
|
47
|
+
additionalContext: `The /company goal is NOT yet achieved. Continue the THINK > EXECUTE > VERIFY cycle. Read .company/GOAL.md and the latest cycle briefing to continue.\n\nGoal:\n${goal.substring(0, 500)}`
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
console.log(JSON.stringify(output));
|
package/install.sh
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
set -e
|
|
3
|
+
|
|
4
|
+
REPO="https://raw.githubusercontent.com/jagmarques/company-skill/main"
|
|
5
|
+
|
|
6
|
+
# Install skill globally
|
|
7
|
+
mkdir -p "$HOME/.claude/skills/company"
|
|
8
|
+
curl -sL "$REPO/skill/SKILL.md" -o "$HOME/.claude/skills/company/SKILL.md" 2>/dev/null || \
|
|
9
|
+
wget -q "$REPO/skill/SKILL.md" -O "$HOME/.claude/skills/company/SKILL.md" 2>/dev/null || \
|
|
10
|
+
{ echo "Error: curl or wget required"; exit 1; }
|
|
11
|
+
|
|
12
|
+
# Install commands globally
|
|
13
|
+
mkdir -p "$HOME/.claude/commands/company"
|
|
14
|
+
for cmd in run status resume; do
|
|
15
|
+
curl -sL "$REPO/commands/$cmd.md" -o "$HOME/.claude/commands/company/$cmd.md" 2>/dev/null || true
|
|
16
|
+
done
|
|
17
|
+
|
|
18
|
+
# Install agents globally
|
|
19
|
+
mkdir -p "$HOME/.claude/agents"
|
|
20
|
+
for agent in lead worker reviewer critic digest; do
|
|
21
|
+
curl -sL "$REPO/agents/company-$agent.md" -o "$HOME/.claude/agents/company-$agent.md" 2>/dev/null || true
|
|
22
|
+
done
|
|
23
|
+
|
|
24
|
+
# Create COMPANY.md template in current directory if missing
|
|
25
|
+
if [ ! -f "COMPANY.md" ]; then
|
|
26
|
+
curl -sL "$REPO/COMPANY.md.template" -o "COMPANY.md" 2>/dev/null || true
|
|
27
|
+
[ -f "COMPANY.md" ] && echo "Created COMPANY.md template. Edit it with your team."
|
|
28
|
+
fi
|
|
29
|
+
|
|
30
|
+
# Gitignore .company/
|
|
31
|
+
grep -q "^\.company/" .gitignore 2>/dev/null || echo ".company/" >> .gitignore 2>/dev/null || true
|
|
32
|
+
|
|
33
|
+
echo "Installed globally. Available commands:"
|
|
34
|
+
echo " /company Main skill"
|
|
35
|
+
echo " /company:run Run with a goal"
|
|
36
|
+
echo " /company:status Check status"
|
|
37
|
+
echo " /company:resume Continue from last session"
|
package/package.json
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "company-skill",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "Goal-driven multi-employee company for Claude Code. Give it a goal, it runs until done.",
|
|
5
|
+
"bin": {
|
|
6
|
+
"company-skill": "./bin/install.js"
|
|
7
|
+
},
|
|
8
|
+
"keywords": ["claude-code", "skill", "multi-agent", "company", "orchestration"],
|
|
9
|
+
"author": "jagmarques",
|
|
10
|
+
"license": "MIT",
|
|
11
|
+
"repository": {
|
|
12
|
+
"type": "git",
|
|
13
|
+
"url": "https://github.com/jagmarques/company-skill.git"
|
|
14
|
+
}
|
|
15
|
+
}
|
package/skill/SKILL.md
ADDED
|
@@ -0,0 +1,381 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: company
|
|
3
|
+
description: |
|
|
4
|
+
Goal-driven multi-employee company. Give it a goal, it runs until done.
|
|
5
|
+
Reads COMPANY.md for team structure. Built-in quality reviewers.
|
|
6
|
+
Use when: "launch company", "start company", "all employees", or /company "goal".
|
|
7
|
+
allowed-tools:
|
|
8
|
+
- Bash
|
|
9
|
+
- Read
|
|
10
|
+
- Write
|
|
11
|
+
- Edit
|
|
12
|
+
- Grep
|
|
13
|
+
- Glob
|
|
14
|
+
- Agent
|
|
15
|
+
- WebSearch
|
|
16
|
+
- WebFetch
|
|
17
|
+
- Skill
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
# /company, Goal-Driven Multi-Employee Company
|
|
21
|
+
|
|
22
|
+
## Preamble (run first, always)
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
echo "════════════════════════════════════════════════" && echo " 🏢 COMPANY SKILL ACTIVE" && echo "════════════════════════════════════════════════" && echo "" && ([ -f COMPANY.md ] && echo "$(grep -c '^[0-9]\|^- ' COMPANY.md 2>/dev/null) roles found" || echo "No COMPANY.md, will auto-create")
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
Give it a goal. It runs the entire company in loops until the goal is verified done.
|
|
29
|
+
|
|
30
|
+
```
|
|
31
|
+
/company "Build the user authentication system with OAuth2"
|
|
32
|
+
/company "Research all competitors and write a competitive analysis"
|
|
33
|
+
/company "Fix the payment processing bug and deploy"
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
You set the goal. Walk away. Come back to a STATUS.md with everything accomplished.
|
|
37
|
+
|
|
38
|
+
## Core Loop
|
|
39
|
+
|
|
40
|
+
```
|
|
41
|
+
GOAL: "{what the user asked for}"
|
|
42
|
+
|
|
|
43
|
+
THINK ── Leads break the goal into tasks, assign to employees
|
|
44
|
+
|
|
|
45
|
+
EXECUTE ── Employees do the work (code, research, scan, test)
|
|
46
|
+
|
|
|
47
|
+
VERIFY ── Built-in Reviewer + Critic check if the goal is actually met
|
|
48
|
+
|
|
|
49
|
+
Done? ── NO: loop back to THINK with feedback on what's missing
|
|
50
|
+
── YES: write STATUS.md, report to user
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
The loop does NOT stop until VERIFY confirms the goal is met.
|
|
54
|
+
|
|
55
|
+
## Built-In Roles (Always Active)
|
|
56
|
+
|
|
57
|
+
These exist in EVERY company, regardless of COMPANY.md. They are the backbone.
|
|
58
|
+
If the user already defined any of these roles, the built-in version merges with theirs (no duplicates).
|
|
59
|
+
|
|
60
|
+
### Leadership (THINK phase)
|
|
61
|
+
**CEO**, Reads the goal, sets priorities, resolves conflicts between departments. If the user defined a CEO, that definition is used. If not, auto-created.
|
|
62
|
+
|
|
63
|
+
**CTO**, Technical decisions, architecture review, code quality standards. Auto-created if not defined.
|
|
64
|
+
|
|
65
|
+
### Quality Gate (VERIFY phase)
|
|
66
|
+
**Internal Reviewer**, Reviews all work after each cycle. Checks: is it correct? Does it address the goal? Are there bugs or gaps? Grades each success criterion as MET / NOT MET / PARTIALLY MET.
|
|
67
|
+
|
|
68
|
+
**User Advocate**, "Would a real user understand this? Is the API ugly? Does the README make sense in 10 seconds?" Represents the end user who doesn't care about internals.
|
|
69
|
+
|
|
70
|
+
**Devil's Advocate**, Attacks every result. "What could go wrong? What did we miss? Would an external expert accept this?" Only satisfied when there are zero remaining holes.
|
|
71
|
+
|
|
72
|
+
**Elegance Enforcer**, "Can this be simpler? Is there unnecessary complexity? Does every component justify its existence?" Prevents over-engineering.
|
|
73
|
+
|
|
74
|
+
### Deduplication Rule
|
|
75
|
+
When parsing COMPANY.md, check if the user defined roles matching these built-ins:
|
|
76
|
+
- Match by name similarity: "CEO", "Chief Executive", "CTO", "Tech Lead", "Reviewer", "Critic", "Advocate", etc.
|
|
77
|
+
- If match found: use the USER'S description but ensure the role runs in the correct phase (CEO in THINK, Reviewer in VERIFY)
|
|
78
|
+
- If no match: auto-create with default description
|
|
79
|
+
- Never duplicate: one CEO, one CTO, one Reviewer, one Advocate, one Elegance Enforcer, one User Advocate
|
|
80
|
+
|
|
81
|
+
This means a 2-person COMPANY.md (just "Backend Dev" + "Frontend Dev") automatically gets: CEO + CTO + Backend Dev + Frontend Dev + Internal Reviewer + Devil's Advocate + Elegance Enforcer + User Advocate = 8 employees running.
|
|
82
|
+
|
|
83
|
+
## Step 1: Parse Goal + Company
|
|
84
|
+
|
|
85
|
+
Read the user's goal from the command argument or their message.
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
for f in COMPANY.md company.md; do [ -f "$f" ] && echo "FOUND: $f" && break; done
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
If no COMPANY.md found:
|
|
92
|
+
1. If a goal was given, create a COMPANY.md with a minimal team tailored to the goal (engineering dept for code goals, research dept for analysis goals, etc.) plus the built-in roles. Write it to disk so the user can edit it later.
|
|
93
|
+
2. If no goal given, create COMPANY.md from the template with placeholder departments and tell the user to fill it in before running again.
|
|
94
|
+
|
|
95
|
+
**Parsing rules:**
|
|
96
|
+
- Roles are `- ` lines that appear UNDER department headers (`## Department Name`)
|
|
97
|
+
- Lines under `## Priorities`, `## Rules`, `## Communication`, `## Protocol` are NOT roles
|
|
98
|
+
- Stop collecting roles when hitting the next `##` header
|
|
99
|
+
- A role line typically has a name followed by a comma and description: `- Role Name, description`
|
|
100
|
+
|
|
101
|
+
Classify roles:
|
|
102
|
+
- **THINK (Opus):** lead, director, chief, CEO, CTO, principal, architect, strategist
|
|
103
|
+
- **EXECUTE (Sonnet):** engineer, researcher, scientist, developer, specialist, analyst, scout, designer, writer
|
|
104
|
+
- **VERIFY (Opus):** Internal Reviewer + Devil's Advocate (always Opus, verification needs deep reasoning)
|
|
105
|
+
- **COMPRESS (Haiku):** auto-created digest writer
|
|
106
|
+
|
|
107
|
+
Explicit `[opus]`/`[sonnet]`/`[haiku]` tags override defaults.
|
|
108
|
+
|
|
109
|
+
## Step 2: Install Skills
|
|
110
|
+
|
|
111
|
+
```bash
|
|
112
|
+
INSTALLED=$(for d in ~/.claude/skills/*/SKILL.md .claude/skills/*/SKILL.md; do
|
|
113
|
+
[ -f "$d" ] && basename "$(dirname "$d")"
|
|
114
|
+
done 2>/dev/null | sort -u)
|
|
115
|
+
|
|
116
|
+
# Auto-install skill packs (failures don't block)
|
|
117
|
+
echo "$INSTALLED" | grep -q "gstack" || npx gstack@latest install 2>/dev/null || true
|
|
118
|
+
echo "$INSTALLED" | grep -q "gsd" || npx -y get-shit-done-cc@latest install 2>/dev/null || true
|
|
119
|
+
echo "$INSTALLED" | grep -q "trailofbits" || (git clone --depth 1 https://github.com/trailofbits/skills.git /tmp/tob-skills 2>/dev/null && cp -r /tmp/tob-skills/.claude/skills/* ~/.claude/skills/ 2>/dev/null && rm -rf /tmp/tob-skills) || true
|
|
120
|
+
# More skill packs via npm
|
|
121
|
+
echo "$INSTALLED" | grep -q "claude-mem\|thedotmack" || npm i -g claude-mem@latest 2>/dev/null || true
|
|
122
|
+
echo "$INSTALLED" | grep -q "oh-my-claude\|sisyphus" || npm i -g oh-my-claude-sisyphus@latest 2>/dev/null || true
|
|
123
|
+
# Marketplace plugins (detect if user added them, can't auto-install)
|
|
124
|
+
# /plugin marketplace add obra/superpowers-marketplace
|
|
125
|
+
# /plugin marketplace add wshobson/agents
|
|
126
|
+
# /plugin marketplace add alirezarezvani/claude-skills
|
|
127
|
+
|
|
128
|
+
for d in ~/.claude/skills/*/SKILL.md .claude/skills/*/SKILL.md; do
|
|
129
|
+
[ -f "$d" ] && basename "$(dirname "$d")"
|
|
130
|
+
done 2>/dev/null | sort -u
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
Build {DETECTED_SKILLS} list. When installed, skills are MANDATORY.
|
|
134
|
+
|
|
135
|
+
Users can install additional skill packs manually for more capabilities:
|
|
136
|
+
```
|
|
137
|
+
/plugin marketplace add wshobson/agents
|
|
138
|
+
/plugin marketplace add alirezarezvani/claude-skills
|
|
139
|
+
/plugin marketplace add obra/superpowers-marketplace
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
## Step 3: Initialize
|
|
143
|
+
|
|
144
|
+
```bash
|
|
145
|
+
mkdir -p .company/cycles .company/messages .company/memory
|
|
146
|
+
grep -q "^\.company/" .gitignore 2>/dev/null || echo ".company/" >> .gitignore 2>/dev/null || true
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
Write `.company/GOAL.md`:
|
|
150
|
+
```markdown
|
|
151
|
+
# Goal
|
|
152
|
+
{the user's goal}
|
|
153
|
+
|
|
154
|
+
# Success Criteria
|
|
155
|
+
{inferred from the goal, what does "done" look like?}
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
Write `.company/cycles/cycle-0-briefing.md` with: goal, success criteria, team structure, rules, any previous state.
|
|
159
|
+
|
|
160
|
+
## Step 4: Run Loop (repeat until verified)
|
|
161
|
+
|
|
162
|
+
At the START of each cycle, run this Bash command (replace {N} with the cycle number):
|
|
163
|
+
|
|
164
|
+
```bash
|
|
165
|
+
echo "" && echo "════════════════════════════════════════════════" && echo "🏢 CYCLE {N} - THINK > EXECUTE > VERIFY" && echo "════════════════════════════════════════════════"
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
At the END of each VERIFY phase, run:
|
|
169
|
+
|
|
170
|
+
```bash
|
|
171
|
+
echo "" && echo "📋 CYCLE {N} VERDICT: {DONE or NOT DONE}" && echo "{one line reason from Reviewer}"
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
### Phase A, THINK (Opus, parallel)
|
|
175
|
+
|
|
176
|
+
**MANDATORY: Launch EVERY department lead from COMPANY.md in parallel. Not just CEO and CTO. ALL of them.** Parse COMPANY.md for every `## Department (Lead: Role)` header and launch that lead. Also launch the built-in roles (Internal Reviewer, Devil's Advocate, Elegance Enforcer, User Advocate) if they exist as separate departments.
|
|
177
|
+
|
|
178
|
+
If COMPANY.md has 8 departments, launch 8 leads. If it has 3, launch 3. Never skip a department.
|
|
179
|
+
|
|
180
|
+
Each lead gets:
|
|
181
|
+
|
|
182
|
+
```
|
|
183
|
+
You are {ROLE} ({DEPT} department). Cycle {N}.
|
|
184
|
+
|
|
185
|
+
GOAL: {contents of .company/GOAL.md}
|
|
186
|
+
BRIEFING: {contents of .company/cycles/cycle-{N}-briefing.md}
|
|
187
|
+
YOUR TEAM: {list of employees in your department}
|
|
188
|
+
INSTALLED SKILLS (MANDATORY, use these instead of doing work manually):
|
|
189
|
+
{DETECTED_SKILLS}
|
|
190
|
+
|
|
191
|
+
SKILL RULES (YOU MUST FOLLOW):
|
|
192
|
+
- Code review tasks: MUST use /review
|
|
193
|
+
- Bug investigation: MUST use /investigate
|
|
194
|
+
- Browser testing: MUST use /qa or /browse
|
|
195
|
+
- PR/shipping: MUST use /ship
|
|
196
|
+
- Architecture review: MUST use /plan-eng-review
|
|
197
|
+
- Strategy review: MUST use /plan-ceo-review or /office-hours
|
|
198
|
+
- Security audit: MUST use trailofbits skills if installed
|
|
199
|
+
- Project planning: MUST use /gsd:plan-phase if installed
|
|
200
|
+
- Web research: MUST use WebSearch
|
|
201
|
+
- Only use raw tools (Read/Write/Bash) when NO installed skill matches the task
|
|
202
|
+
|
|
203
|
+
{If cycle > 0:}
|
|
204
|
+
FEEDBACK FROM LAST VERIFICATION:
|
|
205
|
+
{what the Reviewer and Critic said was missing}
|
|
206
|
+
|
|
207
|
+
INSTRUCTIONS:
|
|
208
|
+
1. What does your department need to do to achieve the GOAL?
|
|
209
|
+
2. {If cycle > 0:} Address the verification feedback specifically.
|
|
210
|
+
3. Assign tasks to your employees. For EVERY task, check the SKILL RULES above first:
|
|
211
|
+
|
|
212
|
+
TASK: {one sentence}
|
|
213
|
+
ASSIGN: {employee role}
|
|
214
|
+
SKILL: {MANDATORY skill from rules above, or "raw" ONLY if no skill matches}
|
|
215
|
+
CONTEXT: {max 200 words}
|
|
216
|
+
|
|
217
|
+
4. Write to .company/cycles/cycle-{N}-think-{dept}.md
|
|
218
|
+
```
|
|
219
|
+
|
|
220
|
+
### Phase B, EXECUTE (Sonnet, parallel)
|
|
221
|
+
|
|
222
|
+
Launch all assigned employees. Each gets:
|
|
223
|
+
|
|
224
|
+
```
|
|
225
|
+
You are {ROLE}. Cycle {N}.
|
|
226
|
+
|
|
227
|
+
GOAL: {the company's goal, so every employee knows WHY}
|
|
228
|
+
TASK: {from lead's assignment}
|
|
229
|
+
CONTEXT: {from lead}
|
|
230
|
+
SKILL: {assigned skill, MANDATORY}
|
|
231
|
+
PREVIOUS WORK: {.company/{dept}/{worker-slug}.md if exists}
|
|
232
|
+
|
|
233
|
+
INSTRUCTIONS:
|
|
234
|
+
1. If a skill was assigned (not "raw"), you MUST invoke it via the Skill tool. Do NOT do the work manually.
|
|
235
|
+
2. ONLY if skill is "raw", use raw tools (Read, Write, Bash, WebSearch).
|
|
236
|
+
3. Write findings to .company/{dept}/{worker-slug}.md with MANDATORY format:
|
|
237
|
+
FINDING: {what you found}
|
|
238
|
+
SOURCE: {file path, URL, experiment output, or exact command that proves this}
|
|
239
|
+
CONFIDENCE: HIGH (measured), MEDIUM (extrapolated), LOW (estimated)
|
|
240
|
+
Any claim without a SOURCE will be REJECTED by reviewers.
|
|
241
|
+
4. Rate finding 1-5.
|
|
242
|
+
5. Append to .company/messages/{dept}.jsonl:
|
|
243
|
+
{"type":"finding","from":"{ROLE}","priority":N,"source":"{proof}","confidence":"{H/M/L}","content":"summary"}
|
|
244
|
+
```
|
|
245
|
+
|
|
246
|
+
### Phase C, VERIFY (Opus, sequential)
|
|
247
|
+
|
|
248
|
+
This is what makes the loop work. Launch TWO built-in reviewers:
|
|
249
|
+
|
|
250
|
+
**Internal Reviewer:**
|
|
251
|
+
```
|
|
252
|
+
You are the Internal Reviewer. Cycle {N} just completed.
|
|
253
|
+
|
|
254
|
+
GOAL: {from .company/GOAL.md}
|
|
255
|
+
SUCCESS CRITERIA: {from .company/GOAL.md}
|
|
256
|
+
|
|
257
|
+
Read ALL of these:
|
|
258
|
+
- All .company/messages/*.jsonl from this cycle
|
|
259
|
+
- All .company/{dept}/*.md employee findings
|
|
260
|
+
- Any code changes (git diff if applicable)
|
|
261
|
+
|
|
262
|
+
QUESTION: Has the goal been achieved? Check each success criterion.
|
|
263
|
+
|
|
264
|
+
DOUBLE-VERIFICATION RULES:
|
|
265
|
+
- Every finding MUST have a SOURCE field. Reject any without one.
|
|
266
|
+
- For HIGH-priority findings (4-5), RE-RUN the experiment or RE-CHECK the source yourself.
|
|
267
|
+
- If a finding says "24x compression", verify by reading the actual experiment output file.
|
|
268
|
+
- If a finding cites a paper, verify the paper exists via WebSearch.
|
|
269
|
+
- Any claim you cannot independently verify gets marked UNVERIFIED.
|
|
270
|
+
|
|
271
|
+
Write to .company/cycles/cycle-{N}-review.md:
|
|
272
|
+
For each criterion:
|
|
273
|
+
CRITERION: {what was required}
|
|
274
|
+
STATUS: MET / NOT MET / PARTIALLY MET
|
|
275
|
+
EVIDENCE: {what proves it, with file path or URL}
|
|
276
|
+
VERIFIED: YES (I re-checked) / NO (could not verify)
|
|
277
|
+
GAPS: {what's still missing}
|
|
278
|
+
|
|
279
|
+
FINAL VERDICT: DONE or NOT DONE
|
|
280
|
+
If NOT DONE: list exactly what the next cycle must fix.
|
|
281
|
+
```
|
|
282
|
+
|
|
283
|
+
**Devil's Advocate:**
|
|
284
|
+
```
|
|
285
|
+
You are the Devil's Advocate. Your job: find holes.
|
|
286
|
+
|
|
287
|
+
GOAL: {from .company/GOAL.md}
|
|
288
|
+
REVIEWER VERDICT: {from cycle-{N}-review.md}
|
|
289
|
+
|
|
290
|
+
If the Reviewer said DONE, challenge it:
|
|
291
|
+
- Is the work ACTUALLY complete or just surface-level?
|
|
292
|
+
- What edge cases were missed?
|
|
293
|
+
- Would this survive scrutiny from an external expert?
|
|
294
|
+
- Is there anything we're fooling ourselves about?
|
|
295
|
+
|
|
296
|
+
If the Reviewer said NOT DONE, amplify:
|
|
297
|
+
- What's the REAL blocker?
|
|
298
|
+
- Is the team approaching this the right way or wasting cycles?
|
|
299
|
+
|
|
300
|
+
Write to .company/cycles/cycle-{N}-advocate.md:
|
|
301
|
+
VERDICT: ACCEPT (goal truly met) or CHALLENGE (not yet)
|
|
302
|
+
REASON: {honest assessment}
|
|
303
|
+
GAPS: {what's missing, if any}
|
|
304
|
+
```
|
|
305
|
+
|
|
306
|
+
### Phase D, COMPRESS + DECIDE
|
|
307
|
+
|
|
308
|
+
Launch Haiku digest writer to compress cycle output into next briefing.
|
|
309
|
+
|
|
310
|
+
Then check:
|
|
311
|
+
- Reviewer says DONE **AND** Advocate says ACCEPT → **EXIT LOOP**
|
|
312
|
+
- Either says NOT DONE / CHALLENGE → **inject their feedback into next cycle's briefing, continue**
|
|
313
|
+
|
|
314
|
+
No arbitrary iteration limit. The loop runs until the goal is verified done.
|
|
315
|
+
The only reasons to stop early:
|
|
316
|
+
- Context window approaching limit → compact and continue
|
|
317
|
+
- User presses Ctrl+C → save state to STATUS.md for /company resume
|
|
318
|
+
|
|
319
|
+
## Step 5: Final Report
|
|
320
|
+
|
|
321
|
+
Write `.company/STATUS.md`:
|
|
322
|
+
|
|
323
|
+
```markdown
|
|
324
|
+
# Company Status, {DATE}
|
|
325
|
+
## Goal
|
|
326
|
+
{the original goal}
|
|
327
|
+
|
|
328
|
+
## Verdict: {ACHIEVED / PARTIALLY ACHIEVED / IN PROGRESS}
|
|
329
|
+
|
|
330
|
+
## What Got Done
|
|
331
|
+
{bullet points from all cycles}
|
|
332
|
+
|
|
333
|
+
## Verification
|
|
334
|
+
{Reviewer's final assessment}
|
|
335
|
+
{Advocate's final assessment}
|
|
336
|
+
|
|
337
|
+
## Remaining (if any)
|
|
338
|
+
{what didn't get finished}
|
|
339
|
+
|
|
340
|
+
## Cycles: {N} of 5 max
|
|
341
|
+
```
|
|
342
|
+
|
|
343
|
+
Update `.company/memory/` with persistent findings.
|
|
344
|
+
|
|
345
|
+
Report to user. If goal was achieved, suggest next steps. If not, explain what's blocking.
|
|
346
|
+
|
|
347
|
+
## Commands
|
|
348
|
+
|
|
349
|
+
The skill accepts different forms:
|
|
350
|
+
|
|
351
|
+
```
|
|
352
|
+
/company "Build the auth system" ← goal-driven, runs until done
|
|
353
|
+
/company ← reads priorities from COMPANY.md, runs cycles
|
|
354
|
+
/company status ← shows .company/STATUS.md without running
|
|
355
|
+
/company resume ← continues from where last session stopped
|
|
356
|
+
```
|
|
357
|
+
|
|
358
|
+
## Without COMPANY.md
|
|
359
|
+
|
|
360
|
+
If no COMPANY.md exists, the skill creates a minimal team based on the goal:
|
|
361
|
+
- Code/build/fix goals → CEO + CTO + 2 engineers + Internal Reviewer + Devil's Advocate
|
|
362
|
+
- Research/analyze goals → CEO + Research Director + 2 researchers + Internal Reviewer + Devil's Advocate
|
|
363
|
+
- Review/audit goals → CEO + Lead Reviewer + 2 reviewers + Internal Reviewer + Devil's Advocate
|
|
364
|
+
|
|
365
|
+
The user doesn't need to configure anything. Just `/company "do this thing"`.
|
|
366
|
+
|
|
367
|
+
## Namespaced Memory
|
|
368
|
+
|
|
369
|
+
`.company/memory/{dept}.json` persists findings across sessions. Employees check memory before re-researching.
|
|
370
|
+
|
|
371
|
+
## Health Monitoring
|
|
372
|
+
|
|
373
|
+
Failed employees get logged and skipped. After 3 consecutive failures, flagged to user.
|
|
374
|
+
|
|
375
|
+
## Safety
|
|
376
|
+
|
|
377
|
+
- No arbitrary loop limit, runs until the objective is done
|
|
378
|
+
- Built-in Reviewer + Advocate prevent premature "done" claims
|
|
379
|
+
- If context window gets tight, compact and continue
|
|
380
|
+
- If user stops (Ctrl+C), state saves to STATUS.md for `/company resume`
|
|
381
|
+
- All work persists in `.company/`, nothing is lost
|