@yemi33/minions 0.1.1888 → 0.1.1890

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/docs/index.html CHANGED
@@ -1 +1,281 @@
1
- <!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Minions &mdash; Multi-Agent AI Dev Team</title><meta name="description" content="Five autonomous coding agents, one engine, and one dashboard. Minions orchestrates Claude or GitHub Copilot agents to plan, implement, review, verify, and ship code."><style> :root { --bg: #0d1117; --surface: #161b22; --border: #30363d; --text: #c9d1d9; --muted: #8b949e; --blue: #58a6ff; --green: #3fb950; --yellow: #d29922; --red: #f85149; --purple: #bc8cff; } * { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; background: var(--bg); color: var(--text); line-height: 1.6; } /* Hero */ .hero { text-align: center; padding: 80px 20px 60px; } .hero h1 { font-size: 3.5em; color: var(--blue); margin-bottom: 12px; letter-spacing: -1px; } .hero h1 span { color: var(--text); } .hero .tagline { font-size: 1.3em; color: var(--muted); max-width: 600px; margin: 0 auto 32px; } .hero-badges { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; margin-bottom: 32px; } .hero-badge { display: inline-flex; align-items: center; gap: 6px; padding: 6px 14px; border-radius: 20px; font-size: 13px; font-weight: 600; border: 1px solid var(--border); background: var(--surface); } .hero-badge.green { color: var(--green); border-color: rgba(63,185,80,0.3); } .hero-badge.blue { color: var(--blue); border-color: rgba(88,166,255,0.3); } .hero-badge.yellow { color: var(--yellow); border-color: rgba(210,153,34,0.3); } .hero-badge.purple { color: var(--purple); border-color: rgba(188,140,255,0.3); } .cta { display: inline-flex; gap: 12px; flex-wrap: wrap; justify-content: center; } .cta a { padding: 12px 28px; border-radius: 8px; font-weight: 600; font-size: 15px; text-decoration: none; transition: all 0.2s; } .cta-primary { background: var(--blue); color: var(--bg); } .cta-primary:hover { background: #79c0ff; } .cta-secondary { background: var(--surface); color: var(--text); border: 1px solid var(--border); } .cta-secondary:hover { border-color: var(--blue); color: var(--blue); } /* Container */ .container { max-width: 1100px; margin: 0 auto; padding: 0 20px; } /* Agents strip */ .agents-strip { display: flex; justify-content: center; gap: 24px; padding: 40px 20px; flex-wrap: wrap; } .agent-pill { display: flex; align-items: center; gap: 8px; padding: 10px 18px; background: var(--surface); border: 1px solid var(--border); border-radius: 12px; } .agent-pill .emoji { font-size: 1.4em; } .agent-pill .name { font-weight: 700; color: var(--text); font-size: 14px; } .agent-pill .role { color: var(--muted); font-size: 12px; } /* Features grid */ .features { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; padding: 40px 0; } .feature { background: var(--surface); border: 1px solid var(--border); border-radius: 10px; padding: 24px; } .feature h3 { color: var(--blue); font-size: 1em; margin-bottom: 6px; } .feature p { color: var(--muted); font-size: 13px; line-height: 1.5; } /* Scenario sections */ .scenario { margin: 60px 0; } .scenario-header { display: flex; align-items: center; gap: 14px; margin-bottom: 12px; } .scenario-num { background: var(--blue); color: var(--bg); font-weight: 700; width: 36px; height: 36px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 15px; flex-shrink: 0; } .scenario h2 { font-size: 1.5em; color: #f0f6fc; } .scenario > p { color: var(--muted); margin-bottom: 16px; max-width: 800px; font-size: 15px; } .demo-frame { border: 1px solid var(--border); border-radius: 10px; overflow: hidden; box-shadow: 0 8px 32px rgba(0,0,0,0.4); } .demo-frame img { width: 100%; display: block; } .demo-caption { background: var(--surface); padding: 10px 18px; font-size: 13px; color: var(--muted); border-top: 1px solid var(--border); } /* Inline badges */ .badge { display: inline-block; padding: 2px 8px; border-radius: 4px; font-size: 11px; font-weight: 600; } .badge-green { background: rgba(63,185,80,0.15); color: var(--green); border: 1px solid rgba(63,185,80,0.3); } .badge-blue { background: rgba(88,166,255,0.15); color: var(--blue); border: 1px solid rgba(88,166,255,0.3); } .badge-yellow { background: rgba(210,153,34,0.15); color: var(--yellow); border: 1px solid rgba(210,153,34,0.3); } .badge-red { background: rgba(248,81,73,0.15); color: var(--red); border: 1px solid rgba(248,81,73,0.3); } .hl { color: var(--green); font-weight: 600; } /* Quick start */ .quickstart { background: var(--surface); border: 1px solid var(--border); border-radius: 10px; padding: 32px; margin: 60px 0; } .quickstart h2 { color: var(--blue); margin-bottom: 16px; } .quickstart pre { background: var(--bg); border: 1px solid var(--border); border-radius: 8px; padding: 16px 20px; overflow-x: auto; font-size: 14px; line-height: 1.8; color: var(--green); } .quickstart pre .comment { color: var(--muted); } /* Architecture */ .arch { text-align: center; padding: 60px 0; } .arch h2 { color: var(--blue); margin-bottom: 20px; } .arch pre { background: var(--surface); border: 1px solid var(--border); border-radius: 10px; padding: 24px; display: inline-block; text-align: left; font-size: 13px; color: var(--muted); line-height: 1.7; } /* Footer */ footer { text-align: center; color: #484f58; padding: 40px 0; border-top: 1px solid #21262d; margin-top: 80px; font-size: 13px; } footer a { color: var(--blue); text-decoration: none; }</style></head><body><!-- Hero --><div class="hero"> <h1>Minions <span>Mission Control</span></h1> <p class="tagline">Five autonomous coding agents, one engine, one dashboard. Plan, implement, review, verify, and ship code with human control at every gate.</p> <div class="hero-badges"> <span class="hero-badge green">Node.js 18+</span> <span class="hero-badge blue">Claude or Copilot</span> <span class="hero-badge yellow">Multi-Project</span> <span class="hero-badge purple">Dashboard + CLI</span> </div> <div class="cta"> <a href="https://www.npmjs.com/package/@yemi33/minions" class="cta-primary">Install from npm</a> <a href="#quickstart" class="cta-secondary">Quick Start</a> </div></div><!-- Agent strip --><div class="agents-strip"> <div class="agent-pill"><span class="emoji">&#x1F3D7;&#xFE0F;</span><div><div class="name">Ripley</div><div class="role">Lead / Explorer</div></div></div> <div class="agent-pill"><span class="emoji">&#x1F527;</span><div><div class="name">Dallas</div><div class="role">Engineer</div></div></div> <div class="agent-pill"><span class="emoji">&#x1F4CA;</span><div><div class="name">Lambert</div><div class="role">Analyst</div></div></div> <div class="agent-pill"><span class="emoji">&#x1F9E0;</span><div><div class="name">Rebecca</div><div class="role">Architect</div></div></div> <div class="agent-pill"><span class="emoji">&#x2699;&#xFE0F;</span><div><div class="name">Ralph</div><div class="role">Engineer</div></div></div></div><!-- Features --><div class="container"><div class="features"> <div class="feature"><h3>Autonomous Dispatch</h3><p>Engine discovers work from plans, PRs, schedules, pipelines, and queues &mdash; then routes to the right agent by role, skill, and availability.</p></div> <div class="feature"><h3>Plan Lifecycle</h3><p>Plan &rarr; Approve &rarr; PRD &rarr; Execute &rarr; Review &rarr; Verify. Completed plans stay available until you manually archive them.</p></div> <div class="feature"><h3>Team Meetings</h3><p>Multi-agent meetings with investigate, debate, and conclude rounds. Agents research, discuss, and produce actionable conclusions.</p></div> <div class="feature"><h3>Multi-Stage Pipelines</h3><p>Chain tasks, meetings, plans, and more into automated workflows. Cron triggers or manual. Artifacts flow between stages.</p></div> <div class="feature"><h3>Review / Fix Loop</h3><p>After implementation, Minions can dispatch reviews, react to human PR comments, and send fixes back to the original author agent.</p></div> <div class="feature"><h3>Git Worktree Isolation</h3><p>Each agent works in its own worktree. No conflicts, no cross-contamination, safe parallel execution.</p></div> <div class="feature"><h3>Knowledge Consolidation</h3><p>Agent findings, quick notes, pinned notes, and feedback consolidate into team notes and a categorized knowledge base.</p></div> <div class="feature"><h3>PR Integration</h3><p>Tracks Azure DevOps and GitHub PRs, including review votes, build status, merge status, human comments, and context-only links.</p></div> <div class="feature"><h3>Scheduled Tasks &amp; Watches</h3><p>Cron-style recurring work plus watches for PRs, work items, dispatches, meetings, pipelines, agents, and status changes.</p></div> <div class="feature"><h3>Command Center &amp; Doc Chat</h3><p>Natural language orchestration, persistent CC tabs, document Q&amp;A/editing, issue filing, routing updates, and local API actions.</p></div> <div class="feature"><h3>Pluggable Runtimes</h3><p>Run agents through Claude Code or GitHub Copilot CLI, with runtime-specific models, effort, session resume, and permission handling.</p></div> <div class="feature"><h3>Live Dashboard</h3><p>Real-time mission control on port 7331 with paginated views, optimistic updates, live streams, metrics, and settings.</p></div> <div class="feature"><h3>One-Command Updates</h3><p><code>minions update</code> pulls the latest npm package, reapplies files, and restarts while preserving config and customizations.</p></div></div><!-- Demo scenarios --><div class="scenario"> <div class="scenario-header"><div class="scenario-num">1</div><h2>Dashboard Overview</h2></div> <p>Home page with agent status cards, project bar, setup guidance, and engine state. All agents visible at a glance.</p> <div class="demo-frame"> <img src="demo/01-dashboard-overview.png" alt="Dashboard overview with agent cards"> <div class="demo-caption">Home page showing Minions Members, project bar, and engine status badge</div> </div></div><div class="scenario"> <div class="scenario-header"><div class="scenario-num">2</div><h2>Work Items</h2></div> <p>Paginated table with status, type, priority, agent, dependencies, artifacts, and linked PRs. <span class="badge badge-yellow">PENDING</span> <span class="badge badge-blue">DISPATCHED</span> <span class="badge badge-green">DONE</span> <span class="badge badge-red">FAILED</span>. Retry, delete, archive, and add feedback with optimistic updates.</p> <div class="demo-frame"> <img src="demo/02-work-items.png" alt="Work items table"> <div class="demo-caption">Work items page &mdash; 20 per page with create, edit, retry, and delete actions</div> </div></div><div class="scenario"> <div class="scenario-header"><div class="scenario-num">3</div><h2>Plans &amp; PRD</h2></div> <p>Plan cards with Approve / Discuss &amp; Revise / Reject. PRD dependency graph with per-item retry, reopening, verification, and manual archive.</p> <div class="demo-frame"> <img src="demo/03-plans-prd.png" alt="Plans and PRD progress"> <div class="demo-caption">Plans page with status-colored cards, PRD dependency graph, and action buttons</div> </div></div><div class="scenario"> <div class="scenario-header"><div class="scenario-num">4</div><h2>Pull Requests</h2></div> <p>PR tracker sorted by date, with review, build, merge, conflict, and human-comment status. Linked to work items and PRD items. Manual PR linking and context-only observation supported.</p> <div class="demo-frame"> <img src="demo/04-pull-requests.png" alt="Pull requests tracker"> <div class="demo-caption">PRs sorted newest-first with build status, review status, and agent attribution</div> </div></div><div class="scenario"> <div class="scenario-header"><div class="scenario-num">5</div><h2>Team Meetings</h2></div> <p>Multi-agent meetings with 3 rounds: investigate, debate, conclude. Live progress per participant. Create plans from conclusions.</p> <div class="demo-frame"> <img src="demo/05-meetings.png" alt="Meetings page"> <div class="demo-caption">Meetings with round status badges, participant progress, and archive/delete actions</div> </div></div><div class="scenario"> <div class="scenario-header"><div class="scenario-num">6</div><h2>Pipelines</h2></div> <p>Multi-stage workflows chaining tasks, meetings, plans, tests, docs, and more. Cron triggers or manual runs. Artifact tracking between stages.</p> <div class="demo-frame"> <img src="demo/06-pipelines.png" alt="Pipelines page"> <div class="demo-caption">Pipeline cards with stage flow visualization, run history, and progress bars</div> </div></div><div class="scenario"> <div class="scenario-header"><div class="scenario-num">7</div><h2>Notes &amp; Knowledge Base</h2></div> <p>Inbox for agent findings, quick notes, pinned notes, consolidated team notes, and categorized knowledge base. Inline Q&amp;A/editing on documents.</p> <div class="demo-frame"> <img src="demo/07-notes-kb.png" alt="Notes and knowledge base"> <div class="demo-caption">Notes inbox, team notes, and knowledge base with category tabs and pagination</div> </div></div><div class="scenario"> <div class="scenario-header"><div class="scenario-num">8</div><h2>Scheduled Tasks</h2></div> <p>Cron-style recurring work with a visual builder. Schedule work items, tests, docs, plans, asks, meetings, and recurring maintenance.</p> <div class="demo-frame"> <img src="demo/08-schedules.png" alt="Schedules page"> <div class="demo-caption">Schedule list with cron expressions, last-run times, and enable/disable toggles</div> </div></div><div class="scenario"> <div class="scenario-header"><div class="scenario-num">9</div><h2>Engine &amp; Metrics</h2></div> <p>Dispatch queue, engine log, agent metrics, token usage, runtime/model data, quality signals, and context pressure. All paginated.</p> <div class="demo-frame"> <img src="demo/09-engine.png" alt="Engine page"> <div class="demo-caption">Active/pending dispatches, completed history, engine log, and per-agent quality metrics</div> </div></div><div class="scenario"> <div class="scenario-header"><div class="scenario-num">10</div><h2>Command Center</h2></div> <p>Natural language delegation. CC orchestrates &mdash; agents implement. Sessions persist across refreshes and tabs; actions can create work, notes, plans, watches, PR links, and issues.</p> <div class="demo-frame"> <img src="demo/10-command-center.png" alt="Command Center panel"> <div class="demo-caption">Command Center side panel with conversation history, action execution, and session indicator</div> </div></div><!-- Quick Start --><div class="quickstart" id="quickstart"> <h2>Quick Start</h2> <pre><span class="comment"># Prerequisites: Node.js 18+, Git, and at least one agent runtime</span><span class="comment"># Install Claude Code or GitHub Copilot CLI separately, then install Minions</span>npm install -g @yemi33/minions<span class="comment"># Bootstrap ~/.minions/ and scan/link repositories</span>minions init<span class="comment"># Or add a specific project later</span>minions add ~/my-project<span class="comment"># Start engine + dashboard, then open http://localhost:7331</span>minions restart --openminions dash<span class="comment"># Give your first task</span>minions work "Explore the codebase and document the architecture"<span class="comment"># Useful operations</span>minions statusminions doctorminions config set-cli copilot --model gpt-5.4<span class="comment"># Update to latest</span>minions update</pre></div><!-- Architecture --><div class="arch"> <h2>Architecture</h2> <pre> ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ Γöé ~/.minions/ (central hub) Γöé Γöé Γöé Γöé engine.js ΓöÇΓöÇΓöÇΓöÇ 60s tick loop ΓöÇΓöÇΓöÇΓöÇΓöÉ Γöé Γöé Γöé Γöé Γöé Γöé discover work spawn agents poll PRs/comments Γöé Γöé Γöé Γöé Γöé Γöé Γöé ΓöîΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÉ ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ ΓöîΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÉ Γöé Γöé Γöé Plans Γöé Γöé Worktrees Γöé Γöé ADO Γöé Γöé Γöé Γöé PRDs Γöé Γöé (isolated) Γöé ΓöéGitHubΓöé Γöé Γöé Γöé Items Γöé Γöé per agent Γöé Γöé Γöé Γöé Γöé ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ Γöé Γöé Γöé Γöé dashboard.js ΓöÇΓöÇ port 7331 ΓöÇΓöÇ mission control Γöé Γöé runtimes/ ΓöÇΓöÇ Claude Code or GitHub Copilot CLI Γöé Γöé meetings/ ΓöÇΓöÇ multi-agent discussions Γöé Γöé pipelines/ ΓöÇΓöÇ multi-stage workflows Γöé Γöé schedules + watches ΓöÇΓöÇ recurring/conditional work Γöé Γöé notes.md + knowledge/ ΓöÇΓöÇ team memory and KB Γöé ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ </pre></div></div><footer> <p>Minions &mdash; built by <a href="https://github.com/yemi33">yemi33</a> &mdash; <a href="https://www.npmjs.com/package/@yemi33/minions">npm</a> &mdash; <a href="https://yemi33.github.io/minions/">Public site</a> &mdash; MIT License &mdash; Claude Code or GitHub Copilot CLI runtime</p></footer></body></html>
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Minions &mdash; Multi-Agent AI Dev Team</title>
7
+ <meta name="description" content="Five autonomous coding agents, one engine, and one dashboard. Minions orchestrates Claude or GitHub Copilot agents to plan, implement, review, verify, and ship code.">
8
+ <style>
9
+ :root { --bg: #0d1117; --surface: #161b22; --border: #30363d; --text: #c9d1d9; --muted: #8b949e; --blue: #58a6ff; --green: #3fb950; --yellow: #d29922; --red: #f85149; --purple: #bc8cff; }
10
+ * { margin: 0; padding: 0; box-sizing: border-box; }
11
+ body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; background: var(--bg); color: var(--text); line-height: 1.6; }
12
+
13
+ /* Hero */
14
+ .hero { text-align: center; padding: 80px 20px 60px; }
15
+ .hero h1 { font-size: 3.5em; color: var(--blue); margin-bottom: 12px; letter-spacing: -1px; }
16
+ .hero h1 span { color: var(--text); }
17
+ .hero .tagline { font-size: 1.3em; color: var(--muted); max-width: 600px; margin: 0 auto 32px; }
18
+ .hero-badges { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; margin-bottom: 32px; }
19
+ .hero-badge { display: inline-flex; align-items: center; gap: 6px; padding: 6px 14px; border-radius: 20px; font-size: 13px; font-weight: 600; border: 1px solid var(--border); background: var(--surface); }
20
+ .hero-badge.green { color: var(--green); border-color: rgba(63,185,80,0.3); }
21
+ .hero-badge.blue { color: var(--blue); border-color: rgba(88,166,255,0.3); }
22
+ .hero-badge.yellow { color: var(--yellow); border-color: rgba(210,153,34,0.3); }
23
+ .hero-badge.purple { color: var(--purple); border-color: rgba(188,140,255,0.3); }
24
+ .cta { display: inline-flex; gap: 12px; flex-wrap: wrap; justify-content: center; }
25
+ .cta a { padding: 12px 28px; border-radius: 8px; font-weight: 600; font-size: 15px; text-decoration: none; transition: all 0.2s; }
26
+ .cta-primary { background: var(--blue); color: var(--bg); }
27
+ .cta-primary:hover { background: #79c0ff; }
28
+ .cta-secondary { background: var(--surface); color: var(--text); border: 1px solid var(--border); }
29
+ .cta-secondary:hover { border-color: var(--blue); color: var(--blue); }
30
+
31
+ /* Container */
32
+ .container { max-width: 1100px; margin: 0 auto; padding: 0 20px; }
33
+
34
+ /* Agents strip */
35
+ .agents-strip { display: flex; justify-content: center; gap: 24px; padding: 40px 20px; flex-wrap: wrap; }
36
+ .agent-pill { display: flex; align-items: center; gap: 8px; padding: 10px 18px; background: var(--surface); border: 1px solid var(--border); border-radius: 12px; }
37
+ .agent-pill .emoji { font-size: 1.4em; }
38
+ .agent-pill .name { font-weight: 700; color: var(--text); font-size: 14px; }
39
+ .agent-pill .role { color: var(--muted); font-size: 12px; }
40
+
41
+ /* Features grid */
42
+ .features { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; padding: 40px 0; }
43
+ .feature { background: var(--surface); border: 1px solid var(--border); border-radius: 10px; padding: 24px; }
44
+ .feature h3 { color: var(--blue); font-size: 1em; margin-bottom: 6px; }
45
+ .feature p { color: var(--muted); font-size: 13px; line-height: 1.5; }
46
+
47
+ /* Scenario sections */
48
+ .scenario { margin: 60px 0; }
49
+ .scenario-header { display: flex; align-items: center; gap: 14px; margin-bottom: 12px; }
50
+ .scenario-num { background: var(--blue); color: var(--bg); font-weight: 700; width: 36px; height: 36px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 15px; flex-shrink: 0; }
51
+ .scenario h2 { font-size: 1.5em; color: #f0f6fc; }
52
+ .scenario > p { color: var(--muted); margin-bottom: 16px; max-width: 800px; font-size: 15px; }
53
+ .demo-frame { border: 1px solid var(--border); border-radius: 10px; overflow: hidden; box-shadow: 0 8px 32px rgba(0,0,0,0.4); }
54
+ .demo-frame img { width: 100%; display: block; }
55
+ .demo-caption { background: var(--surface); padding: 10px 18px; font-size: 13px; color: var(--muted); border-top: 1px solid var(--border); }
56
+
57
+ /* Inline badges */
58
+ .badge { display: inline-block; padding: 2px 8px; border-radius: 4px; font-size: 11px; font-weight: 600; }
59
+ .badge-green { background: rgba(63,185,80,0.15); color: var(--green); border: 1px solid rgba(63,185,80,0.3); }
60
+ .badge-blue { background: rgba(88,166,255,0.15); color: var(--blue); border: 1px solid rgba(88,166,255,0.3); }
61
+ .badge-yellow { background: rgba(210,153,34,0.15); color: var(--yellow); border: 1px solid rgba(210,153,34,0.3); }
62
+ .badge-red { background: rgba(248,81,73,0.15); color: var(--red); border: 1px solid rgba(248,81,73,0.3); }
63
+ .hl { color: var(--green); font-weight: 600; }
64
+
65
+ /* Quick start */
66
+ .quickstart { background: var(--surface); border: 1px solid var(--border); border-radius: 10px; padding: 32px; margin: 60px 0; }
67
+ .quickstart h2 { color: var(--blue); margin-bottom: 16px; }
68
+ .quickstart pre { background: var(--bg); border: 1px solid var(--border); border-radius: 8px; padding: 16px 20px; overflow-x: auto; font-size: 14px; line-height: 1.8; color: var(--green); }
69
+ .quickstart pre .comment { color: var(--muted); }
70
+
71
+ /* Architecture */
72
+ .arch { text-align: center; padding: 60px 0; }
73
+ .arch h2 { color: var(--blue); margin-bottom: 20px; }
74
+ .arch pre { background: var(--surface); border: 1px solid var(--border); border-radius: 10px; padding: 24px; display: inline-block; text-align: left; font-size: 13px; color: var(--muted); line-height: 1.7; }
75
+
76
+ /* Footer */
77
+ footer { text-align: center; color: #484f58; padding: 40px 0; border-top: 1px solid #21262d; margin-top: 80px; font-size: 13px; }
78
+ footer a { color: var(--blue); text-decoration: none; }
79
+ </style>
80
+ </head>
81
+ <body>
82
+
83
+ <!-- Hero -->
84
+ <div class="hero">
85
+ <h1>Minions <span>Mission Control</span></h1>
86
+ <p class="tagline">Five autonomous coding agents, one engine, one dashboard. Plan, implement, review, verify, and ship code with human control at every gate.</p>
87
+ <div class="hero-badges">
88
+ <span class="hero-badge green">Node.js 18+</span>
89
+ <span class="hero-badge blue">Claude or Copilot</span>
90
+ <span class="hero-badge yellow">Multi-Project</span>
91
+ <span class="hero-badge purple">Dashboard + CLI</span>
92
+ </div>
93
+ <div class="cta">
94
+ <a href="https://www.npmjs.com/package/@yemi33/minions" class="cta-primary">Install from npm</a>
95
+ <a href="#quickstart" class="cta-secondary">Quick Start</a>
96
+ </div>
97
+ </div>
98
+
99
+ <!-- Agent strip -->
100
+ <div class="agents-strip">
101
+ <div class="agent-pill"><span class="emoji">&#x1F3D7;&#xFE0F;</span><div><div class="name">Ripley</div><div class="role">Lead / Explorer</div></div></div>
102
+ <div class="agent-pill"><span class="emoji">&#x1F527;</span><div><div class="name">Dallas</div><div class="role">Engineer</div></div></div>
103
+ <div class="agent-pill"><span class="emoji">&#x1F4CA;</span><div><div class="name">Lambert</div><div class="role">Analyst</div></div></div>
104
+ <div class="agent-pill"><span class="emoji">&#x1F9E0;</span><div><div class="name">Rebecca</div><div class="role">Architect</div></div></div>
105
+ <div class="agent-pill"><span class="emoji">&#x2699;&#xFE0F;</span><div><div class="name">Ralph</div><div class="role">Engineer</div></div></div>
106
+ </div>
107
+
108
+ <!-- Features -->
109
+ <div class="container">
110
+ <div class="features">
111
+ <div class="feature"><h3>Autonomous Dispatch</h3><p>Engine discovers work from plans, PRs, schedules, pipelines, and queues &mdash; then routes to the right agent by role, skill, and availability.</p></div>
112
+ <div class="feature"><h3>Plan Lifecycle</h3><p>Plan &rarr; Approve &rarr; PRD &rarr; Execute &rarr; Review &rarr; Verify. Completed plans stay available until you manually archive them.</p></div>
113
+ <div class="feature"><h3>Team Meetings</h3><p>Multi-agent meetings with investigate, debate, and conclude rounds. Agents research, discuss, and produce actionable conclusions.</p></div>
114
+ <div class="feature"><h3>Multi-Stage Pipelines</h3><p>Chain tasks, meetings, plans, and more into automated workflows. Cron triggers or manual. Artifacts flow between stages.</p></div>
115
+ <div class="feature"><h3>Review / Fix Loop</h3><p>After implementation, Minions can dispatch reviews, react to human PR comments, and send fixes back to the original author agent.</p></div>
116
+ <div class="feature"><h3>Git Worktree Isolation</h3><p>Each agent works in its own worktree. No conflicts, no cross-contamination, safe parallel execution.</p></div>
117
+ <div class="feature"><h3>Knowledge Consolidation</h3><p>Agent findings, quick notes, pinned notes, and feedback consolidate into team notes and a categorized knowledge base.</p></div>
118
+ <div class="feature"><h3>PR Integration</h3><p>Tracks Azure DevOps and GitHub PRs, including review votes, build status, merge status, human comments, and context-only links.</p></div>
119
+ <div class="feature"><h3>Scheduled Tasks &amp; Watches</h3><p>Cron-style recurring work plus watches for PRs, work items, dispatches, meetings, pipelines, agents, and status changes.</p></div>
120
+ <div class="feature"><h3>Command Center &amp; Doc Chat</h3><p>Natural language orchestration, persistent CC tabs, document Q&amp;A/editing, issue filing, routing updates, and local API actions.</p></div>
121
+ <div class="feature"><h3>Pluggable Runtimes</h3><p>Run agents through Claude Code or GitHub Copilot CLI, with runtime-specific models, effort, session resume, and permission handling.</p></div>
122
+ <div class="feature"><h3>Live Dashboard</h3><p>Real-time mission control on port 7331 with paginated views, optimistic updates, live streams, metrics, and settings.</p></div>
123
+ <div class="feature"><h3>One-Command Updates</h3><p><code>minions update</code> pulls the latest npm package, reapplies files, and restarts while preserving config and customizations.</p></div>
124
+ </div>
125
+
126
+ <!-- Demo scenarios -->
127
+ <div class="scenario">
128
+ <div class="scenario-header"><div class="scenario-num">1</div><h2>Dashboard Overview</h2></div>
129
+ <p>Home page with agent status cards, project bar, setup guidance, and engine state. All agents visible at a glance.</p>
130
+ <div class="demo-frame">
131
+ <img src="demo/01-dashboard-overview.png" alt="Dashboard overview with agent cards">
132
+ <div class="demo-caption">Home page showing Minions Members, project bar, and engine status badge</div>
133
+ </div>
134
+ </div>
135
+
136
+ <div class="scenario">
137
+ <div class="scenario-header"><div class="scenario-num">2</div><h2>Work Items</h2></div>
138
+ <p>Paginated table with status, type, priority, agent, dependencies, artifacts, and linked PRs. <span class="badge badge-yellow">PENDING</span> <span class="badge badge-blue">DISPATCHED</span> <span class="badge badge-green">DONE</span> <span class="badge badge-red">FAILED</span>. Retry, delete, archive, and add feedback with optimistic updates.</p>
139
+ <div class="demo-frame">
140
+ <img src="demo/02-work-items.png" alt="Work items table">
141
+ <div class="demo-caption">Work items page &mdash; 20 per page with create, edit, retry, and delete actions</div>
142
+ </div>
143
+ </div>
144
+
145
+ <div class="scenario">
146
+ <div class="scenario-header"><div class="scenario-num">3</div><h2>Plans &amp; PRD</h2></div>
147
+ <p>Plan cards with Approve / Discuss &amp; Revise / Reject. PRD dependency graph with per-item retry, reopening, verification, and manual archive.</p>
148
+ <div class="demo-frame">
149
+ <img src="demo/03-plans-prd.png" alt="Plans and PRD progress">
150
+ <div class="demo-caption">Plans page with status-colored cards, PRD dependency graph, and action buttons</div>
151
+ </div>
152
+ </div>
153
+
154
+ <div class="scenario">
155
+ <div class="scenario-header"><div class="scenario-num">4</div><h2>Pull Requests</h2></div>
156
+ <p>PR tracker sorted by date, with review, build, merge, conflict, and human-comment status. Linked to work items and PRD items. Manual PR linking and context-only observation supported.</p>
157
+ <div class="demo-frame">
158
+ <img src="demo/04-pull-requests.png" alt="Pull requests tracker">
159
+ <div class="demo-caption">PRs sorted newest-first with build status, review status, and agent attribution</div>
160
+ </div>
161
+ </div>
162
+
163
+ <div class="scenario">
164
+ <div class="scenario-header"><div class="scenario-num">5</div><h2>Team Meetings</h2></div>
165
+ <p>Multi-agent meetings with 3 rounds: investigate, debate, conclude. Live progress per participant. Create plans from conclusions.</p>
166
+ <div class="demo-frame">
167
+ <img src="demo/05-meetings.png" alt="Meetings page">
168
+ <div class="demo-caption">Meetings with round status badges, participant progress, and archive/delete actions</div>
169
+ </div>
170
+ </div>
171
+
172
+ <div class="scenario">
173
+ <div class="scenario-header"><div class="scenario-num">6</div><h2>Pipelines</h2></div>
174
+ <p>Multi-stage workflows chaining tasks, meetings, plans, tests, docs, and more. Cron triggers or manual runs. Artifact tracking between stages.</p>
175
+ <div class="demo-frame">
176
+ <img src="demo/06-pipelines.png" alt="Pipelines page">
177
+ <div class="demo-caption">Pipeline cards with stage flow visualization, run history, and progress bars</div>
178
+ </div>
179
+ </div>
180
+
181
+ <div class="scenario">
182
+ <div class="scenario-header"><div class="scenario-num">7</div><h2>Notes &amp; Knowledge Base</h2></div>
183
+ <p>Inbox for agent findings, quick notes, pinned notes, consolidated team notes, and categorized knowledge base. Inline Q&amp;A/editing on documents.</p>
184
+ <div class="demo-frame">
185
+ <img src="demo/07-notes-kb.png" alt="Notes and knowledge base">
186
+ <div class="demo-caption">Notes inbox, team notes, and knowledge base with category tabs and pagination</div>
187
+ </div>
188
+ </div>
189
+
190
+ <div class="scenario">
191
+ <div class="scenario-header"><div class="scenario-num">8</div><h2>Scheduled Tasks</h2></div>
192
+ <p>Cron-style recurring work with a visual builder. Schedule work items, tests, docs, plans, asks, meetings, and recurring maintenance.</p>
193
+ <div class="demo-frame">
194
+ <img src="demo/08-schedules.png" alt="Schedules page">
195
+ <div class="demo-caption">Schedule list with cron expressions, last-run times, and enable/disable toggles</div>
196
+ </div>
197
+ </div>
198
+
199
+ <div class="scenario">
200
+ <div class="scenario-header"><div class="scenario-num">9</div><h2>Engine &amp; Metrics</h2></div>
201
+ <p>Dispatch queue, engine log, agent metrics, token usage, runtime/model data, quality signals, and context pressure. All paginated.</p>
202
+ <div class="demo-frame">
203
+ <img src="demo/09-engine.png" alt="Engine page">
204
+ <div class="demo-caption">Active/pending dispatches, completed history, engine log, and per-agent quality metrics</div>
205
+ </div>
206
+ </div>
207
+
208
+ <div class="scenario">
209
+ <div class="scenario-header"><div class="scenario-num">10</div><h2>Command Center</h2></div>
210
+ <p>Natural language delegation. CC orchestrates &mdash; agents implement. Sessions persist across refreshes and tabs; actions can create work, notes, plans, watches, PR links, and issues.</p>
211
+ <div class="demo-frame">
212
+ <img src="demo/10-command-center.png" alt="Command Center panel">
213
+ <div class="demo-caption">Command Center side panel with conversation history, action execution, and session indicator</div>
214
+ </div>
215
+ </div>
216
+
217
+ <!-- Quick Start -->
218
+ <div class="quickstart" id="quickstart">
219
+ <h2>Quick Start</h2>
220
+ <pre><span class="comment"># Prerequisites: Node.js 18+, Git, and at least one agent runtime</span>
221
+ <span class="comment"># Install Claude Code or GitHub Copilot CLI separately, then install Minions</span>
222
+ npm install -g @yemi33/minions
223
+
224
+ <span class="comment"># Bootstrap ~/.minions/ and scan/link repositories</span>
225
+ minions init
226
+
227
+ <span class="comment"># Or add a specific project later</span>
228
+ minions add ~/my-project
229
+
230
+ <span class="comment"># Start engine + dashboard, then open http://localhost:7331</span>
231
+ minions restart --open
232
+ minions dash
233
+
234
+ <span class="comment"># Give your first task</span>
235
+ minions work "Explore the codebase and document the architecture"
236
+
237
+ <span class="comment"># Useful operations</span>
238
+ minions status
239
+ minions doctor
240
+ minions config set-cli copilot --model gpt-5.4
241
+
242
+ <span class="comment"># Update to latest</span>
243
+ minions update</pre>
244
+ </div>
245
+
246
+ <!-- Architecture -->
247
+ <div class="arch">
248
+ <h2>Architecture</h2>
249
+ <pre>
250
+ ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
251
+ Γöé ~/.minions/ (central hub) Γöé
252
+ Γöé Γöé
253
+ Γöé engine.js ΓöÇΓöÇΓöÇΓöÇ 60s tick loop ΓöÇΓöÇΓöÇΓöÇΓöÉ Γöé
254
+ Γöé Γöé Γöé Γöé
255
+ Γöé discover work spawn agents poll PRs/comments Γöé
256
+ Γöé Γöé Γöé Γöé Γöé
257
+ Γöé ΓöîΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÉ ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ ΓöîΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÉ Γöé
258
+ Γöé Γöé Plans Γöé Γöé Worktrees Γöé Γöé ADO Γöé Γöé
259
+ Γöé Γöé PRDs Γöé Γöé (isolated) Γöé ΓöéGitHubΓöé Γöé
260
+ Γöé Γöé Items Γöé Γöé per agent Γöé Γöé Γöé Γöé
261
+ Γöé ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ Γöé
262
+ Γöé Γöé
263
+ Γöé dashboard.js ΓöÇΓöÇ port 7331 ΓöÇΓöÇ mission control Γöé
264
+ Γöé runtimes/ ΓöÇΓöÇ Claude Code or GitHub Copilot CLI Γöé
265
+ Γöé meetings/ ΓöÇΓöÇ multi-agent discussions Γöé
266
+ Γöé pipelines/ ΓöÇΓöÇ multi-stage workflows Γöé
267
+ Γöé schedules + watches ΓöÇΓöÇ recurring/conditional work Γöé
268
+ Γöé notes.md + knowledge/ ΓöÇΓöÇ team memory and KB Γöé
269
+ ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
270
+ </pre>
271
+ </div>
272
+
273
+ </div>
274
+
275
+ <footer>
276
+ <p>Minions &mdash; built by <a href="https://github.com/yemi33">yemi33</a> &mdash; <a href="https://www.npmjs.com/package/@yemi33/minions">npm</a> &mdash; <a href="https://yemi33.github.io/minions/">Public site</a> &mdash; MIT License &mdash; Claude Code or GitHub Copilot CLI runtime</p>
277
+ </footer>
278
+
279
+ </body>
280
+ </html>
281
+
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yemi33/minions",
3
- "version": "0.1.1888",
3
+ "version": "0.1.1890",
4
4
  "description": "Multi-agent AI dev team that runs from ~/.minions/ — five autonomous agents share a single engine, dashboard, and knowledge base",
5
5
  "bin": {
6
6
  "minions": "bin/minions.js"
@@ -20,16 +20,20 @@ You are {{agent_name}} ({{agent_role}}) in Round 2 of a team meeting.
20
20
 
21
21
  ## Your Task
22
22
 
23
- You've read everyone's investigation findings above. Now:
23
+ You've read everyone's investigation findings above. Your response MUST begin with the `Disagreements:` section below — in that order — before any other content.
24
24
 
25
- 1. **What do you agree with?** Which points are strongest?
26
- 2. **What do you disagree with?** Challenge weak arguments directly.
25
+ 1. **Disagreements:** (required, FIRST section) — at least one bullet naming a specific Round 1 claim you reject. Each bullet MUST identify the participant by name, quote or paraphrase the claim, give your reason for rejecting it, and cite evidence as `path:line` (for code claims) or a transcript quote (for meeting claims). If after honest review you genuinely cannot disagree with anything, the section MUST take this exact form instead:
26
+
27
+ ```
28
+ Disagreements: none — explicit agreement with <participant>'s claim that <claim> after verifying <evidence: path:line or transcript quote>
29
+ ```
30
+
31
+ "None" with no verification target is not acceptable.
32
+ 2. **What do you agree with?** (max 3 bullets) — which points are strongest, and why.
27
33
  3. **Play devil's advocate** — what's the strongest counterargument to your OWN position?
28
34
  4. **What's missing?** What did everyone overlook?
29
35
  5. **What should the team decide?**
30
36
 
31
- Be direct. Constructive disagreement is encouraged — don't just agree with everyone.
32
-
33
37
  ## Output Format
34
38
 
35
39
  Write your debate response as markdown. Reference other agents' findings by name.
@@ -1,97 +0,0 @@
1
- # Distribution & Publishing
2
-
3
- > **ARCHIVED 2026-05-12.** This document describes a defunct two-repo "personal vs. origin" architecture (`yemishin_microsoft/minions` → `yemi33/minions`) and a manual `/sync-to-personal` workflow that no longer exists. The current model is single-repo: `yemi33/minions` publishes itself to npm via `.github/workflows/publish.yml` on every push to `master`. The doc also incorrectly claims package contents are gated by a `files` field in `package.json` — they are actually gated by `.npmignore`. Kept for historical reference; do not follow these steps.
4
-
5
- Minions is distributed as an npm package (`@yemi33/minions`) from a sanitized copy of the main repo.
6
-
7
- ## Two-Repo Architecture
8
-
9
- | Repo | Purpose | What's included |
10
- |------|---------|----------------|
11
- | **origin** (`yemishin_microsoft/minions`) | Full working repo with all session state | Everything — history, notes, decisions, work items, CLAUDE.md |
12
- | **personal** (`yemi33/minions`) | Clean distribution for others | Engine, dashboard, playbooks, charters, skills, docs, npm package files |
13
-
14
- ## What Gets Stripped
15
-
16
- These files are removed during sync to personal:
17
-
18
- | Category | Pattern | Reason |
19
- |----------|---------|--------|
20
- | Agent history | `agents/*/history.md` | Session-specific task logs |
21
- | Notes archive | `notes/archive/*` | Historical agent findings |
22
- | Notes inbox | `notes/inbox/*` | Pending agent findings |
23
- | Notes summary | `notes.md` | Consolidated knowledge (runtime) |
24
- | Work items | `work-items.json` | Runtime dispatch tracking |
25
- | Project instructions | `CLAUDE.md` | Org-specific context |
26
-
27
- ## npm Package
28
-
29
- **Package:** `@yemi33/minions`
30
- **Registry:** https://www.npmjs.com/package/@yemi33/minions
31
-
32
- ### What's in the package
33
-
34
- Controlled by the `files` field in `package.json`:
35
- - `bin/minions.js` — CLI entry point
36
- - `engine.js`, `dashboard.js`, `dashboard/` (fragments), `minions.js` — core scripts
37
- - `engine/spawn-agent.js`, `engine/ado-mcp-wrapper.js` — engine helpers
38
- - `agents/*/charter.md` — agent role definitions
39
- - `playbooks/*.md` — task templates
40
- - `config.template.json` — starter config
41
- - `routing.md`, `team.md` — editable team config
42
- - `skills/`, `docs/` — documentation and workflows
43
-
44
- ### How `minions init` works
45
-
46
- 1. Copies all package files from `node_modules/@yemi33/minions/` to `~/.minions/`
47
- 2. Creates `config.json` from `config.template.json` if it doesn't exist
48
- 3. Creates runtime directories (`engine/`, `notes/inbox/`, `notes/archive/`, etc.)
49
- 4. Runs `minions.js init` to populate config with default agents
50
- 5. On `--force`, overwrites `.js` and `.html` files but preserves user-modified `.md` files
51
-
52
- ### How updates work
53
-
54
- - Users run `npm update -g @yemi33/minions` then `minions init --force` to update engine code
55
- - `npx @yemi33/minions` always fetches the latest version
56
-
57
- ## Auto-Publishing
58
-
59
- A GitHub Action on the personal repo auto-publishes to npm on every push to master.
60
-
61
- ### How it works
62
-
63
- 1. Push to `yemi33/minions` master triggers `.github/workflows/publish.yml`
64
- 2. Action queries npm for the current published version
65
- 3. Bumps patch version (e.g., `0.1.5` → `0.1.6`)
66
- 4. Publishes to npm with the new version
67
- 5. Commits the version bump back to the repo with `[skip ci]` to prevent loops
68
-
69
- ### Why version comes from npm, not the repo
70
-
71
- The sync-to-personal workflow force-pushes, which overwrites any version bump commits from previous action runs. So the action reads the latest version from the npm registry and bumps from there.
72
-
73
- ### Setup requirements
74
-
75
- - `NPM_TOKEN` secret on `yemi33/minions` — a granular access token with publish permissions and 2FA bypass enabled
76
- - The workflow file (`.github/workflows/publish.yml`) is gitignored on the org repo and force-added during sync
77
-
78
- ## Sync Workflow
79
-
80
- Run `/sync-to-personal` or manually:
81
-
82
- ```bash
83
- # 1. Create dist branch, strip files, add workflow, force-push
84
- git checkout -b dist-clean
85
- git rm --cached agents/*/history.md notes.md work-items.json CLAUDE.md
86
- git rm -r --cached notes/archive/ notes/inbox/ notes/
87
- # ... add .gitkeep files, .gitignore entries, workflow file
88
- git add -f .github/workflows/publish.yml
89
- git commit -m "Strip for distribution"
90
- git push personal dist-clean:master --force
91
-
92
- # 2. Return to master
93
- git checkout master
94
- git branch -D dist-clean
95
- ```
96
-
97
-