From f9d8c34ad14255c7e254701a2c59c314dbb1650f Mon Sep 17 00:00:00 2001 From: harrymunro Date: Thu, 12 Feb 2026 13:29:18 -0400 Subject: [PATCH 1/4] =?UTF-8?q?Add=20Royal=20Marines=20=E2=80=94=20short-l?= =?UTF-8?q?ived=20sub-agents=20for=20captains?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Introduce marine specialisations (Recce, Assault, Sapper) that let captains deploy focused sorties without crewing a full role or requesting a new ship. Includes deployment rules, station-tier interaction, the Battalion Ashore anti-pattern, and a lightweight deployment brief template. In memory of Harrison Owens, Royal Marine, 1988–2024. --- .claude/skills/nelson/SKILL.md | 5 +- .../nelson/references/action-stations.md | 8 +++ .../nelson/references/admiralty-templates.md | 1 + .../marine-deployment-brief.md | 15 ++++++ .../admiralty-templates/ship-manifest.md | 1 + .../skills/nelson/references/crew-roles.md | 6 +++ .../skills/nelson/references/royal-marines.md | 53 +++++++++++++++++++ .../nelson/references/standing-orders.md | 1 + .../standing-orders/battalion-ashore.md | 18 +++++++ 9 files changed, 107 insertions(+), 1 deletion(-) create mode 100644 .claude/skills/nelson/references/admiralty-templates/marine-deployment-brief.md create mode 100644 .claude/skills/nelson/references/royal-marines.md create mode 100644 .claude/skills/nelson/references/standing-orders/battalion-ashore.md diff --git a/.claude/skills/nelson/SKILL.md b/.claude/skills/nelson/SKILL.md index c93d189..23d0602 100644 --- a/.claude/skills/nelson/SKILL.md +++ b/.claude/skills/nelson/SKILL.md @@ -29,6 +29,7 @@ You MUST read `references/admiralty-templates.md` and use the sailing-orders tem - Do not exceed 10 squadron-level agents (admiral, captains, red-cell navigator). Crew are additional. - Assign each captain a ship name from `references/crew-roles.md` matching task weight (frigate for general, destroyer for high-risk, patrol vessel for small, flagship for critical-path, submarine for research). - Captain decides crew composition per ship using the crew-or-direct decision tree in `references/crew-roles.md`. +- Captains may also deploy Royal Marines during execution for short-lived sorties — see `references/royal-marines.md`. You MUST read `references/squadron-composition.md` for selection rules. You MUST read `references/crew-roles.md` for ship naming and crew composition. @@ -40,7 +41,7 @@ You MUST consult `references/standing-orders.md` before forming the squadron. - Assign owner for each task and explicit dependencies. - Assign file ownership when implementation touches code. - Keep one task in progress per agent unless the mission explicitly requires multitasking. -- For each captain's task, include a ship manifest. If crew are mustered, list crew roles with sub-tasks and sequence. If the captain implements directly (0 crew), note "Captain implements directly." +- For each captain's task, include a ship manifest. If crew are mustered, list crew roles with sub-tasks and sequence. If the captain implements directly (0 crew), note "Captain implements directly." If the captain anticipates needing marine support, note marine capacity in the ship manifest (max 2). You MUST read `references/admiralty-templates.md` for the battle plan and ship manifest template. You MUST consult `references/standing-orders.md` when assigning files or if scope is unclear. @@ -57,6 +58,7 @@ You MUST consult `references/standing-orders.md` when assigning files or if scop - Update progress by task state: `pending`, `in_progress`, `completed`. - Identify blockers and choose a concrete next action. - Confirm each crew member has active sub-tasks; flag idle crew or role mismatches. +- Check for active marine deployments; verify marines have returned and outputs are incorporated. - Track burn against token/time budget. - Re-scope early when a task drifts from mission metric. - When a mission encounters difficulties, you MUST consult `references/damage-control.md` for recovery and escalation procedures. @@ -77,6 +79,7 @@ You MUST use `references/commendations.md` for recognition signals and graduated - Agent idle with unverified outputs. - Before final synthesis. - For crewed tasks, verify crew outputs align with role boundaries (consult `references/crew-roles.md` and `references/standing-orders.md` if role violations are detected). +- Marine deployments follow station-tier rules in `references/royal-marines.md`. Station 2+ marine deployments require admiral approval. You MUST consult `references/standing-orders.md` if tasks lack a tier or red-cell is assigned implementation work. diff --git a/.claude/skills/nelson/references/action-stations.md b/.claude/skills/nelson/references/action-stations.md index 54e46d4..45039ee 100644 --- a/.claude/skills/nelson/references/action-stations.md +++ b/.claude/skills/nelson/references/action-stations.md @@ -93,3 +93,11 @@ Run this checklist for Station 1+ tasks. - What is the fastest safe rollback? - What dependency could invalidate this plan? - What assumption is least certain? + +## Marine Deployments + +Marine deployments inherit the parent ship's station tier: + +- **Station 0-1:** Captain deploys at discretion. No admiral approval required. +- **Station 2:** Captain must signal admiral and receive approval before deploying marines. +- **Station 3:** Marine deployment is not permitted. All Trafalgar-tier work requires explicit Admiralty (human) confirmation. diff --git a/.claude/skills/nelson/references/admiralty-templates.md b/.claude/skills/nelson/references/admiralty-templates.md index 4b60981..53430b8 100644 --- a/.claude/skills/nelson/references/admiralty-templates.md +++ b/.claude/skills/nelson/references/admiralty-templates.md @@ -10,4 +10,5 @@ Consult the specific template for the current workflow step. | Run Quarterdeck Rhythm | `admiralty-templates/quarterdeck-report.md` | | Set Action Stations (red-cell review) | `admiralty-templates/red-cell-review.md` | | Brief crew for dispatch | `admiralty-templates/crew-briefing.md` | +| Deploy marines from a ship | `admiralty-templates/marine-deployment-brief.md` | | Stand Down And Log Action | `admiralty-templates/captains-log.md` | diff --git a/.claude/skills/nelson/references/admiralty-templates/marine-deployment-brief.md b/.claude/skills/nelson/references/admiralty-templates/marine-deployment-brief.md new file mode 100644 index 0000000..f42fb4a --- /dev/null +++ b/.claude/skills/nelson/references/admiralty-templates/marine-deployment-brief.md @@ -0,0 +1,15 @@ +# Marine Deployment Brief Template + +```text +== MARINE DEPLOYMENT BRIEF == +Ship: [parent ship name] +Detachment: [Recce Marine / Assault Marine / Sapper] +Objective: [single clear sentence] +Scope: [what to do, and explicitly what NOT to do] +Report back: [what findings/outputs to return] +Constraints: +- Do NOT modify files outside objective scope +- Do NOT spawn sub-agents +- Report findings to captain, do not act beyond objective +== END BRIEF == +``` diff --git a/.claude/skills/nelson/references/admiralty-templates/ship-manifest.md b/.claude/skills/nelson/references/admiralty-templates/ship-manifest.md index 698b78d..061d1f1 100644 --- a/.claude/skills/nelson/references/admiralty-templates/ship-manifest.md +++ b/.claude/skills/nelson/references/admiralty-templates/ship-manifest.md @@ -8,6 +8,7 @@ Ship: - Crew manifest: - [Role Abbr]: [Sub-task description] - [Role Abbr]: [Sub-task description] +- Marine capacity: [0-2, or "as needed"] - Sub-task sequence: 1. [Sub-task] (dependencies: none) 2. [Sub-task] (dependencies: 1) diff --git a/.claude/skills/nelson/references/crew-roles.md b/.claude/skills/nelson/references/crew-roles.md index 99fb7c4..9063ad5 100644 --- a/.claude/skills/nelson/references/crew-roles.md +++ b/.claude/skills/nelson/references/crew-roles.md @@ -74,3 +74,9 @@ The following standing orders apply specifically to crew operations: - `standing-orders/all-hands-on-deck.md` — Do not crew roles the task does not need (too many crew). - `standing-orders/skeleton-crew.md` — Do not spawn a single crew member for an atomic task (too few crew). - `standing-orders/pressed-crew.md` — Do not assign crew work outside their designated role (wrong crew). + +## Royal Marines + +Marines are NOT crew. They are short-lived sub-agents a captain deploys for discrete objectives outside the crew's task scope. See `references/royal-marines.md` for deployment rules and specialisations. + +Key distinction: Crew subdivide the ship's deliverable. Marines execute independent sorties in support of the ship's task. diff --git a/.claude/skills/nelson/references/royal-marines.md b/.claude/skills/nelson/references/royal-marines.md new file mode 100644 index 0000000..0fbb480 --- /dev/null +++ b/.claude/skills/nelson/references/royal-marines.md @@ -0,0 +1,53 @@ +# Royal Marines + +Royal Marines are short-lived sub-agents a captain deploys for focused, independent objectives in service of the ship's task. They are doctrinally distinct from crew: crew subdivide the ship's deliverable, marines execute discrete sorties and return. + +## Deploy-or-Escalate Decision + +Choose the first condition that matches. + +1. Quick recon of unfamiliar area → **Recce Marine** +2. Targeted fix or small implementation to unblock ship → **Assault Marine** +3. Quick config/build/infra task → **Sapper** +4. Sustained work, own deliverable, needs file ownership → **NOT a marine.** Request a new ship from the admiral. +5. Work that subdivides the ship's main deliverable → **NOT a marine.** Crew the role instead. + +## Marine Specialisations + +| Type | Function | subagent_type | Use case | +|---|---|---|---| +| Recce Marine | Reconnaissance & intel gathering | Explore (read-only) | Scout unfamiliar code, gather findings | +| Assault Marine | Direct action, targeted changes | general-purpose | Small fix, unblock a dependency | +| Sapper | Engineering support | general-purpose | Quick config, build, infra task | + +### Read-Only Specialisation + +Recce Marines use the `Explore` subagent type. They cannot modify files. They report findings to the captain, who decides how to act on them. + +## Deployment Rules + +- **Max 2 marines per ship at any time.** If the task needs more, it is crew work or a new ship. +- **Marines cannot deploy marines.** No recursion permitted. +- **Marines report only to their deploying captain.** They do not communicate with crew or other ships. +- **Captain must verify marine output** before incorporating it into the ship's deliverable. +- **Marines do not get ship names.** Identify them as: `RM Detachment, HMS [Ship] — [objective]`. + +## Action Station Interaction + +Marine deployments inherit the parent ship's station tier: + +- **Station 0-1:** Captain deploys at discretion. No admiral approval required. +- **Station 2:** Captain must signal admiral and receive approval before deploying marines. +- **Station 3:** Marine deployment is not permitted. All Trafalgar-tier work requires explicit Admiralty (human) confirmation. + +## Recovery + +Marine recovery is simple. No separate damage-control procedure is needed. + +- If a marine is stuck or unresponsive, captain **abandons the deployment**. +- Captain either redeploys a fresh marine or handles the objective directly. +- If the same marine objective fails twice, captain **escalates to admiral**. + +## Deployment Template + +When deploying a marine, use the briefing template at `admiralty-templates/marine-deployment-brief.md`. diff --git a/.claude/skills/nelson/references/standing-orders.md b/.claude/skills/nelson/references/standing-orders.md index a4378f5..a856598 100644 --- a/.claude/skills/nelson/references/standing-orders.md +++ b/.claude/skills/nelson/references/standing-orders.md @@ -15,3 +15,4 @@ Consult the specific standing order that matches the situation. | Crewing every role regardless of task needs | `standing-orders/all-hands-on-deck.md` | | Spawning one crew member for an atomic task | `standing-orders/skeleton-crew.md` | | Assigning crew work outside their role | `standing-orders/pressed-crew.md` | +| Captain deploying marines for crew work or sustained tasks | `standing-orders/battalion-ashore.md` | diff --git a/.claude/skills/nelson/references/standing-orders/battalion-ashore.md b/.claude/skills/nelson/references/standing-orders/battalion-ashore.md new file mode 100644 index 0000000..0c07e4e --- /dev/null +++ b/.claude/skills/nelson/references/standing-orders/battalion-ashore.md @@ -0,0 +1,18 @@ +# Battalion Ashore + +**Rule:** Do not deploy marines for work that belongs to the ship's crew or warrants a new ship. + +## Symptoms + +- Captain deploys marines constantly instead of using mustered crew. +- Marine objectives expand beyond single sorties. +- Marines editing files outside the ship's ownership. +- More marines deployed than crew mustered. + +## Remedy + +- Use **crew** for sub-tasks of the ship's deliverable. +- **Escalate to admiral** for sustained independent work that needs its own ship. +- Marines are for **focused sorties only** — quick recon, targeted fixes, one-shot tasks. + +See `references/royal-marines.md` for the deploy-or-escalate decision tree. From 6dfcdff0fbdf9a034deda4b3581a0476a51949f7 Mon Sep 17 00:00:00 2001 From: harrymunro Date: Thu, 12 Feb 2026 20:22:01 -0400 Subject: [PATCH 2/4] Battleships improvements --- demos/battleships/index.html | 30 + demos/battleships/js/drag-placement.js | 427 +++++++++++++++ demos/battleships/js/fog-of-war.js | 143 +++++ demos/battleships/js/game.js | 576 ++++++++++++++------ demos/battleships/js/modes.js | 32 +- demos/battleships/js/particles.js | 272 ++++++++- demos/battleships/js/sfx.js | 515 ++++++++++++++++- demos/battleships/js/weapons.js | 132 +++++ demos/battleships/styles/accessibility.css | 93 ++++ demos/battleships/styles/animations.css | 122 +++++ demos/battleships/styles/drag-placement.css | 90 +++ demos/battleships/styles/fog-of-war.css | 77 +++ demos/battleships/styles/main.css | 1 + demos/battleships/styles/mobile.css | 393 +++++++++++++ demos/battleships/styles/weapons.css | 241 ++++++++ docs/reddit-reply-graduated-discipline.md | 11 + 16 files changed, 2987 insertions(+), 168 deletions(-) create mode 100644 demos/battleships/js/drag-placement.js create mode 100644 demos/battleships/js/fog-of-war.js create mode 100644 demos/battleships/js/weapons.js create mode 100644 demos/battleships/styles/animations.css create mode 100644 demos/battleships/styles/drag-placement.css create mode 100644 demos/battleships/styles/fog-of-war.css create mode 100644 demos/battleships/styles/mobile.css create mode 100644 demos/battleships/styles/weapons.css create mode 100644 docs/reddit-reply-graduated-discipline.md diff --git a/demos/battleships/index.html b/demos/battleships/index.html index 5a5aedd..229b53e 100644 --- a/demos/battleships/index.html +++ b/demos/battleships/index.html @@ -6,6 +6,11 @@ Battleships + + + + + @@ -61,6 +66,16 @@

Campaign
Five battles of escalating difficulty.
+ @@ -214,6 +229,18 @@

Score: 0 + + + +