You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 6aaf0c9
Browse filesBrowse the repository at this point in the historyBrowse files
- M6.7 "Class Select" — the awwwards milestone: selectable Agent Roles
(Warcraft-III race-select energy) that reskin the whole editor to a
role's atmosphere + surface its priorities. Six classes (Atelier/War
Room/Forge/Vault/Observatory/Workshop). Role engine = { persona +
skills + MCP + UI profile } reskinning via five levers (persona,
theme, when-gated views, status bar, dashboard) — honestly tagged
extension-reachable (rebase-safe) vs the one deferred core patch
(pixel-perfect layout reorder). First slice: Forge + War Room.
- M6.5 — fold obra/Superpowers in as a first-class installable skill
source (verified MIT; /skills/*/SKILL.md tree, same agentskills.io
standard the registry already parses — no adapter), installed on
demand with LICENSE attribution.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: PLAN.md
+17-1Lines changed: 17 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -152,13 +152,29 @@ Give the agent a hot-swappable library of expertise it picks *implicitly* per ta
152
152
*The awwwards-grade UX — magical because implicit, trustworthy because every choice is visible and reversible:*
153
153
-**`🧩 using skill: X` chip** on every selection (the existing `agentTool → addAgentLine` path, same quiet treatment as `🔎 Auto-context`); click to see *why*, view the read-only SKILL.md, or **⊘ suppress it and re-run the turn**.
154
154
-**Slash-commands** (`/webapp-testing fix the flaky login spec`) as the power-user escape hatch — discoverability + deterministic override, never the default path.
155
-
-**Skills gallery + installer** — list all three tiers with source badges, enable/disable toggles, and an Add-skill flow (folder / `.skill` zip / URL) that validates frontmatter on import.
155
+
-**Skills gallery + installer** — list all three tiers with source badges, enable/disable toggles, and an Add-skill flow (folder / `.skill` zip / URL) that validates frontmatter on import.*Includes an "Add source" that installs external `SKILL.md` collections on demand into `~/.atom-plus-plus/skills/` — flagship example: **obra/Superpowers** (MIT; a `/skills/*/SKILL.md` tree of TDD / debugging / planning / code-review methodology skills) — clones in, LICENSE appended to `THIRD_PARTY_LICENSES.md`, attribution badge shown. No adapter needed: it's the same agentskills.io standard the registry already speaks.*
156
156
-**`skill-creator`** bundled so users author their own ("make a skill for our GraphQL conventions" → scaffolds a valid SKILL.md, live on save) — the Atom "hack your editor while it runs" feeling, mirroring the existing package generator.
157
157
158
158
*Starter coding skills to bundle (license-clean only):* frontend-design, webapp-testing, mcp-builder, skill-creator (Apache-2.0, vendored verbatim); code-review, pr-review-expert, focused-fix, test-writing, refactor, commit-and-pr, docs-writer, ship-gate (MIT-adapted or original). **Licensing guardrail:** Apache-2.0 (anthropics code skills) + MIT (community-adapted + our own) ship freely with their LICENSE + a `THIRD_PARTY_LICENSES.md`; the **source-available** document skills (docx/pdf/pptx/xlsx) are **reference-only — never bundled** (the same "license-clean" bar that strips Copilot), but users may install them into their own `~/.atom-plus-plus/skills/`, or we ship an original MIT "pdf-lite."
159
159
160
160
*First slice (one sitting, proves the thesis):*`skills.js` (bundled tier only) + the `use_skill` tool + the SYSTEM menu + three scriptless skills (**code-review, focused-fix, test-writing**) + the free `🧩` chip (no new UI). Demo: *"this login function throws on empty input, fix it"* → the agent calls `use_skill('focused-fix')` unprompted, the chip shows it, and the SKILL.md steers SCOPE→TRACE→DIAGNOSE→FIX→VERIFY through the existing edit/review tools. Implicit, token-cheap, visible, rebase-safe — proven in one demo. Slash-commands, gallery, user/workspace tiers, hot-reload, and script-bundling are fast follows on the same seam.
161
161
162
+
**M6.7 — "Class Select": Agent Roles (the Warcraft-races reskin). — the awwwards moment.**
163
+
*Pick your class, the editor transforms.* A **Role** is a first-class, installable bundle = **{ persona/system-prompt + skill set + MCP servers + UI profile }**. Choosing one from a **"Class Select"** splash (Warcraft-III race-select energy) **reskins the whole shell** to that role's atmosphere — color theme, which panels are surfaced vs hidden, the status-bar channel, a role **mission-control dashboard**, and the agent's very priorities — then sources that role's expertise from **obra/Superpowers** + the M6.5 `SKILL.md` library. Six first-party "classes": **The Atelier** (UX/UI Designer — museum bone-white, Canvas/Preview + design tokens, visual-verify persona), **The War Room** (DevOps/SRE — near-black NOC green/amber/red, Ops Matrix + multi-log-tail, *"show the plan/diff, default dry-run"*), **The Forge** (Backend — slate/molten-orange, Endpoint Workbench + test runner, *"tests are part of the change — run them before Done"*), **The Vault** (Security — obsidian/caution-yellow, Findings/Threat board, *"read-only by default, cite the CWE before fixing"*), **The Observatory** (Data/ML — indigo night-sky, dataset profile + notebook), **The Workshop** (Frontend — One-Light + framework accent, Live Preview + perf/a11y nudges).
164
+
165
+
*Awwwards hook:* the same "fix this" prompt is answered by a calm, blast-radius-obsessed SRE in a dark NOC one second and a contract-obsessed backend engineer in a molten-orange forge the next — theme, panels, status channel, dashboard, **and the agent's personality** — all in one click, all on your own key.
166
+
167
+
*The Role engine (a new `roles.js` in `extensions/atom-ai/`; active role in `globalState`, workspace-overridable via `.atompp/role`) reskins via five levers, each honestly tagged extension-reachable vs core-patch:*
168
+
-**Persona***(extension — highest leverage)* — refactor `agent.js`'s `SYSTEM` const into `buildSystem(role)`: prepend the role's persona + append its `skills[]` to the M6.5 "Available skills" menu, and set role-specific approval strictness on the existing `run_command` card. *Zero core risk; makes the agent visibly become a different engineer — this is where Superpowers' TDD/review methodology steers behavior.*
169
+
-**Theme***(extension)* — `config.update('workbench.colorTheme', role.ui.theme)` switches the whole shell instantly; the chat webview themes 100% off `var(--vscode-*)`, so it reskins for free. Ship 6 role themes in `atom-themes`.
170
+
-**Surfaced views***(extension; pixel-perfect layout *reorder* = optional deferred core patch)* — contribute each role panel once in `package.json` gated `"when": "atompp.role == '<id>'"`; the engine flips one context key (`setContext('atompp.role', id)`) to reveal/hide the right set. Rebase-safe; only forcing built-in container *positions* (terminal-as-centerpiece, fixed-width chat) needs a tagged `[Atom++]` core patch, deferred.
171
+
-**Status bar***(extension)* — per-role channel items (War Room: cluster/namespace + health dot; Forge: service + test pass/fail), reusing `inlineComplete.js`'s status-item pattern.
172
+
-**Role dashboard***(extension)* — one `createWebviewPanel` per role (Ops Matrix, Design-System Health, Threat Board, Endpoint Workbench, Dataset Profile…), built on the chat-view primitive, fed by the agent's read-only tools + role MCP servers (M6) — live data, not mockups.
173
+
174
+
*Superpowers integration (verified: MIT, `Copyright (c) 2025 Jesse Vincent`; 14 skills under `/skills/*/SKILL.md`):* folds into M6.5 as a **`source: 'superpowers'` tier** — installed on demand (not bundled into the `.dmg`), scanned by the registry with **no adapter** (same SKILL.md standard), LICENSE appended to `THIRD_PARTY_LICENSES.md`, attribution badge. The engineering classes (**Forge/Workshop**) drive Superpowers' TDD → review-against-plan methodology, closing M5's verify loop with a battle-tested named workflow. Because a Role's `skills[]` resolves from *any* registry tier, **community Role packs are drop-in** (`.role` zip / git URL, validated like the skill installer) — Superpowers is the flagship third-party example.
175
+
176
+
*First slice (one sitting, proves all five levers):* ship **The Forge** + **The War Room** (sharpest contrast). `roles.js` with those 2 manifests + `setRole`/`roleChanged`/`setContext`; `buildSystem(role)` (War Room demands a dry-run plan before any mutating command; Forge won't say "Done" until tests pass); the 2 themes; a per-role status item; one when-gated panel each; a 2-card Class Select splash. *Demo: Class Select → War Room → the editor goes dark-NOC, the chat re-skins, a health dot + namespace appear, an Ops Matrix slides in, and "deploy this" now makes the agent show a dry-run plan; click The Forge → the world flips to slate-and-orange with a test pass/fail counter and an agent that won't finish until green. Same editor, two completely different engineers, one click.* Gallery / Superpowers clone / MCP / layout-patch are all fast-follows on the same seam.
177
+
162
178
**M7 — The daily-driver flow.**
163
179
-**● Next-edit prediction — "Tab to Jump"***(L)* — upgrade `inlineComplete.js` from single-shot FIM into diff-aware next-edit prediction (recent edits + open tabs as context, multi-line rewrites, jump-to-next-edit site) with prompt-prefix caching. *Tab/Fusion is repeatedly named the single most addictive Cursor/Windsurf feature and the highest-frequency daily interaction; our single-shot, uncached completion is the biggest experiential gap.*
164
180
-**Image / multimodal input***(M)* — attach screenshots/mockups in the composer; send image blocks (Anthropic supports them); flip `lmProvider``imageInput: true`. *Design-to-code and visual debugging are now expected for frontend work.*
0 commit comments