ecd47fe3db
revert fcb9c189e5
...
revert fix(agentic): harden TODO workspace write
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-18 11:22:27 +00:00
Codex
fcb9c189e5
fix(agentic): harden TODO workspace write
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-18 08:54:32 +01:00
Snider
db6d06ae2b
merge: integrate forge dispatch + mcp changes with AX compliance sweep
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-13 09:39:41 +01:00
Snider
39914fbf14
refactor: AX compliance sweep — replace banned stdlib imports with core primitives
...
Replaced fmt, strings, sort, os, io, sync, encoding/json, path/filepath,
errors, log, reflect with core.Sprintf, core.E, core.Contains, core.Trim,
core.Split, core.Join, core.JoinPath, slices.Sort, c.Fs(), c.Lock(),
core.JSONMarshal, core.ReadAll and other CoreGO v0.8.0 primitives.
Framework boundary exceptions preserved where stdlib types are required
by external interfaces (Gin, net/http, CGo, Wails, bubbletea).
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-13 09:32:00 +01:00
Snider
7a531d1112
perf(mcp): reduce tool count from 189 to 82
...
Gate non-essential MCP tools behind CORE_MCP_FULL=1 env var.
Core factory tools (dispatch, status, plan, issue, PR, scan, mirror,
watch, brain, files) always registered. Extended tools (session, sprint,
state, phase, task, template, message, content, platform, epic, remote,
review-queue, setup, metrics, RAG, webview) only when full mode enabled.
189 → 82 tools in default mode. Fixes slow MCP startup and tool
registration timeout in Claude Code.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-08 19:17:21 +01:00
Snider
e8862e26be
feat(dispatch): LEM profiles + native Claude agents
...
- Add isLEMProfile(): codex:lemmy/lemer/lemma/lemrd use --profile not --model
- Add isNativeAgent(): Claude agents run natively (not in Docker)
- Update localAgentCommandScript for LEM profile support
- 12 new tests (Good/Bad/Ugly for profiles, native agent, codex variants)
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-08 17:17:33 +01:00
Snider
9bdd47d9d5
feat(agent): v0.3.0 — dispatch control, run task CLI, quiet notifications, spark pool
...
- Add agentic_dispatch_start / shutdown / shutdown_now MCP tools
- Queue frozen by default, CORE_AGENT_DISPATCH=1 to auto-start
- Add run task CLI command — single task e2e (prep → spawn → wait)
- Add DispatchSync for blocking dispatch without MCP
- Quiet notifications — only agent.failed and queue.drained events
- Remove duplicate notification paths (direct callback + polling loop)
- codex-spark gets separate concurrency pool (baseAgent routing)
- Rate-limit backoff detection (3 fast failures → 30min pause)
- Review agent uses exec with sandbox bypass (not codex review)
- Bump: core-agent 0.3.0, core plugin 0.15.0, devops plugin 0.2.0
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-23 16:08:08 +00:00
Snider
e9224b18b8
refactor(devops): convert operational skills to agent tasks
...
Skills I trigger (not the user) become agent tasks:
- clean-workspaces, repair-core-agent, merge-workspace, health-check
Keeps as skills (user-invoked CLI wrappers):
- forge commands (issue/pr/repo), workspace-list/clean,
build-prompt, update-deps
Agent tasks use haiku/sonnet for fast autonomous execution.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-22 15:45:32 +00:00
Snider
73cac920ce
refactor(devops): convert install-core-agent from skill to agent task
...
Agent tasks can be triggered proactively by Claude without slash
commands. Uses haiku model for fast execution. Same rules — go
install from the right directory, never touch binaries directly.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-22 15:45:32 +00:00
Snider
7e30f336cc
feat(devops): 13 CLI-backed skills for forge, workspace, and diagnostics
...
Thin skill wrappers over core-agent CLI commands:
- workspace-list, workspace-clean
- issue-get, issue-list, issue-comment
- pr-get, pr-list, pr-merge
- repo-get, repo-list
- build-prompt, health-check
Each skill calls core-agent directly — no raw API calls,
no remembering flags. Edge cases fixed in the skill.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-22 15:45:16 +00:00
Snider
6e37bd22f0
feat: devops plugin, CLI commands, Codex dispatch fixes, AX sweep
...
DevOps plugin (5 skills):
- install-core-agent, repair-core-agent, merge-workspace,
update-deps, clean-workspaces
CLI commands: version, check, extract for diagnostics.
Codex dispatch: --skip-git-repo-check, removed broken
--model-reasoning-effort, --sandbox workspace-write via
--full-auto. Workspace template extracts to wsDir not srcDir.
AX sweep (Codex-generated): sanitise.go extracted from prep/plan,
mirror.go JSON parsing via encoding/json, setup/config.go URL
parsing via net/url, strings/fmt imports eliminated from setup.
CODEX.md template updated with Env/Path patterns.
Review workspace template with audit-only PROMPT.md.
Marketplace updated with devops plugin.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-22 15:45:16 +00:00
Snider
52c3e67692
fix(plugin): rename CoreAgent→core, CorePHP→core-php
...
Plugin names must match their directory/reference names.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-22 02:22:26 +00:00
Snider
0be5791fc4
chore: bump core-research plugin to 0.3.0
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-22 02:15:39 +00:00
Snider
3c49620548
chore: bump plugin version to 0.14.0
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-22 02:14:36 +00:00
Snider
05f120b166
Merge remote-tracking branch 'github/dev'
CI / test (push) Failing after 3s
2026-03-22 00:29:11 +00:00
Snider
81806e5dcc
chore: plugin v0.13.0, research v0.2.0, marketplace naming + MONITOR_INTERVAL
...
CI / test (push) Failing after 3s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-21 20:01:51 +00:00
Snider
62b9ee7729
refactor(plugin): split research skills into separate plugin
...
CI / test (push) Failing after 3s
New plugin: claude/research (core-research v0.1.0)
- 12 collection/research skills moved from core
- collection subsystem (hooks, scripts) moved
- Installed separately when research work is needed
Core plugin bumped to v0.12.0 — now focused on:
- Dispatch, review, messaging, OpenBrain (operational)
- Deploy, app-split, repo-sweep (infrastructure)
- Architecture review, security review (quality)
Marketplace updated with CoreResearch entry.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-21 18:16:06 +00:00
Snider
287a4cf110
fix(plugin): address validation findings — commands + skill frontmatter
...
CI / test (push) Failing after 3s
Critical: /core:remember rewritten to use brain_remember MCP tool
instead of missing capture-context.sh script.
Major: /core:pipeline persona paths fixed — now reference
pkg/lib/persona/ with correct slugs instead of nonexistent
agents/engineering/ directory.
Major: Added YAML frontmatter (name + description) to all 12
collection skill SKILL.md files for Claude Code auto-discovery.
Removed empty channel/ directory.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-21 18:12:40 +00:00
Snider
5628abcc7f
refactor: flatten go/ subdir, migrate to dappco.re/go/agent, restore process service
...
- Module path: dappco.re/go/agent
- Core import: dappco.re/go/core v0.4.7
- Process service re-enabled with new Core API
- Plugin bumped to v0.11.0
- Directory flattened from go/ to root
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-21 11:12:40 +00:00
Claude
fc9fc1af83
feat(skills): add repo-sweep skill for multi-repo agent dispatch
...
Orchestrates dispatching agents across multiple repos with:
- Repo selection (all, by org, by language, explicit list)
- Configurable persona + template + task per sweep
- Concurrency-aware dispatch with queue monitoring
- Finding triage: actionable → Forge issue, informational → OpenBrain, noise → ignore
- Summary report with per-repo findings
5 default profiles: quality, security, conventions, tests, docs.
Uses testing/reality-checker persona for quality sweeps.
Co-Authored-By: Charon <charon@lethean.io>
2026-03-21 11:12:40 +00:00
Snider
21f234aa7c
refactor: flatten go/ subdir, migrate to dappco.re/go/agent, restore process service
...
- Module path: dappco.re/go/agent
- Core import: dappco.re/go/core v0.4.7
- Process service re-enabled with new Core API
- Plugin bumped to v0.11.0
- Directory flattened from go/ to root
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-21 11:10:44 +00:00
Snider
be1130f470
agent updates
2026-03-21 11:10:44 +00:00
Snider
1215898608
agent updates
2026-03-20 19:31:45 +00:00
Claude
2e3f56c4a7
feat(skills): add repo-sweep skill for multi-repo agent dispatch
...
Orchestrates dispatching agents across multiple repos with:
- Repo selection (all, by org, by language, explicit list)
- Configurable persona + template + task per sweep
- Concurrency-aware dispatch with queue monitoring
- Finding triage: actionable → Forge issue, informational → OpenBrain, noise → ignore
- Summary report with per-repo findings
5 default profiles: quality, security, conventions, tests, docs.
Uses testing/reality-checker persona for quality sweeps.
Co-Authored-By: Charon <charon@lethean.io>
2026-03-18 15:21:11 +00:00
Snider
85bdf26aa0
feat: add orchestration skills + local dispatch scripts
...
- orchestrate skill: full plan→dispatch→review→fix→verify pipeline
- prompts skill: browse/read personas, tasks, flows, templates
- review-pipeline skill: multi-stage security→fix→simplify→architecture→verify
- local-dispatch.sh: dispatch agents without MCP (clone, run CLI, capture)
- workspace-status.sh: check all workspace statuses
- main.go: fix ServiceFor removal (use c.Service() + type assert)
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-18 12:18:40 +00:00
Snider
1b4b0bf381
feat: add core:agent-task-code-review and core:agent-task-code-simplifier
...
Plugin agents for the closeout sequence:
- agent-task-code-review: conventions, security, nil pointers, confidence scoring
- agent-task-code-simplifier: consolidate, deduplicate, flatten, no behaviour change
Namespace: agent-task-code-* (SASE boundary pattern)
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-17 20:43:33 +00:00
Snider
8c76f496ed
fix: bump marketplace.json to v0.10.0, fix hooks.json structure, remove invalid hooks from plugin.json
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-17 18:47:36 +00:00
Snider
7a75a3969d
chore: bump plugin to v0.10.0
...
- Plugin now provides MCP server via mcp.json (local core-agent stdio)
- No manual .mcp.json needed — plugin auto-registers
- Portable paths (CORE_WORKSPACE env var, no hardcoded machine paths)
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-17 18:41:28 +00:00
Snider
462d5123f9
fix: plugin provides local core-agent MCP (not remote mcp.lthn.sh)
...
Plugin's mcp.json now uses local "core-agent mcp" via stdio instead of
remote HTTPS. This means installing the plugin auto-registers the MCP
server — no manual .mcp.json needed.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-17 18:38:18 +00:00
Snider
317be4c53f
fix: use CORE_WORKSPACE env var in shell scripts, fallback to ~/Code/.core
...
Scripts now use ${CORE_WORKSPACE:-$HOME/Code/.core} instead of
hardcoded host-uk path. Works on both Cladius and Charon.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-17 18:23:39 +00:00
Snider
0622982fa7
chore: bump plugin to v0.9.0, update description and keywords
...
Reflects all capabilities added today:
- Remote dispatch (Charon HTTP daemon)
- Verify+merge pipeline with rebase retry
- CodeRabbit + Codex review queue
- GitHub mirror sync
- PostToolUse inbox notification hook
- Cross-agent messaging
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-17 18:04:10 +00:00
Snider
90b03191b2
feat(agent): v0.2.0 — HTTP daemon, remote dispatch, review queue, verify+merge
...
Major additions:
- core-agent serve: persistent HTTP daemon with PID file, health check, registry
- agentic_dispatch_remote: dispatch tasks to remote agents (Charon) over MCP HTTP
- agentic_status_remote: check remote agent workspace status
- agentic_mirror: sync Forge repos to GitHub mirrors with file count limits
- agentic_review_queue: CodeRabbit/Codex review queue with rate-limit awareness
- verify.go: auto-verify (run tests) + auto-merge + retry with rebase + needs-review label
- monitor sync: checkin API integration for cross-agent repo sync
- PostToolUse inbox notification hook (check-notify.sh)
Dispatch improvements:
- --dangerously-skip-permissions (CLI flag changed)
- proc.CloseStdin() after spawn (Claude CLI stdin pipe fix)
- GOWORK=off in agent env and verify
- Exit code / BLOCKED.md / failure detection
- Monitor poke for instant notifications
New agent types:
- coderabbit: CodeRabbit CLI review (--plain --base)
- codex:review: OpenAI Codex review mode
Integrations:
- CODEX.md: OpenAI Codex conventions file
- Gemini extension: points at core-agent MCP (not Node server)
- Codex config: core-agent MCP server added
- GitHub webhook handler + CodeRabbit KPI tables (PHP)
- Forgejo provider for uptelligence webhooks
- Agent checkin endpoint for repo sync
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-17 17:45:04 +00:00
Snider
b95a367d9d
feat: add check-inbox.sh with marker-based change detection
...
Only outputs when there are new messages since last check.
Uses .inbox-last-id marker file to track highest seen message ID.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-17 06:17:29 +00:00
Snider
99733bd83e
chore: bump plugin to v0.7.0
...
New since v0.6.0:
- Monitor subsystem (background ecosystem watcher via MCP session)
- agentic_watch tool (progress notifications)
- Auto PR creation on agent completion
- Sandbox enforcement (3-layer)
- Completion events (events.jsonl)
- status://agents MCP resource
- go-process init for dispatch
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-17 05:45:01 +00:00
Snider
67705e2be9
fix: remove SessionStart completion check, keep idle_prompt only
...
Completion notifications should fire while running (idle), not on restart.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-17 03:47:42 +00:00
Snider
cb56cfb270
fix: initialise go-process for dispatch, fix Notification hook matcher
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-17 03:22:34 +00:00
Snider
58749c87f8
feat: agent completion events + plugin hooks
...
spawnAgent() now writes completion events to events.jsonl.
Plugin hooks check for completions on:
- SessionStart: report agents that finished since last session
- Notification(idle_prompt): check when Claude is idle
Event format: {"type":"agent_completed","agent":"...","workspace":"...","timestamp":"..."}
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-17 03:05:26 +00:00
Snider
7b8b93b4b1
feat: merge review/verify into core plugin, add messaging MCP tools
...
Consolidate all commands under /core: prefix — review and verify plugins
merged into core. Adds agent_send, agent_inbox, agent_conversation as
Laravel MCP tools so messaging works through the HTTP server.
- 15 commands all under /core: (was split across 3 plugins)
- Messaging tools registered in Boot::onMcpTools()
- Hooks merged (PostToolUse for PR create, PreToolUse for git push)
- Plugin bumped to v0.6.0
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-16 14:52:01 +00:00
Snider
ec6b07dea2
chore: bump plugin to v0.5.0 (agent messaging)
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-16 14:17:21 +00:00
Snider
54e9fe0b61
chore: bump core plugin to v0.4.0 (hook cleanup)
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-16 05:42:25 +00:00
Snider
88e5fc6f49
refactor(plugin): remove restrictive hooks, clean up orphaned scripts
...
Removed:
- prefer-core.sh: blocked raw go/php commands unnecessarily
- post-commit-check.sh: noisy warnings after every commit
- block-docs.sh: blocked writing specs and RFCs
- capture-context.sh, extract-actionables.sh, pr-created.sh,
suggest-compact.sh: orphaned scripts not referenced by any hook
Kept:
- go-format.sh, php-format.sh: auto-format after edits (helpful)
- check-debug.sh: warns about dd()/fmt.Print* (lightweight)
- session-start.sh, pre-compact.sh, session-save.sh: essential
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-16 05:37:52 +00:00
Snider
cce41faa39
fix(plugin): remove block-docs hook — was blocking specs and RFCs
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-16 05:32:21 +00:00
Snider
86040da16a
chore(plugin): bump version to 0.3.0 for core/ rename
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-15 17:07:47 +00:00
Snider
fd7be94b2c
fix(plugin): rename plugin from code → core for /core: namespace
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-15 17:03:58 +00:00
Snider
afbc915db3
rename: claude/code → claude/core for /core: command namespace
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-15 16:59:01 +00:00
Snider
4373af173b
fix(plugin): use bare command names — plugin adds code: prefix automatically
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-15 16:58:23 +00:00
Snider
4d43b4c9bf
fix(plugin): restore core: prefix on commands
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-15 16:54:53 +00:00
Snider
03b77bd9db
fix(plugin): drop core: prefix — commands use code: namespace from dir
...
Plugin commands derive namespace from directory (claude/code/) not
the name field. Commands now: /code:dispatch, /code:status, /code:recall,
/code:review, /code:sweep, /code:scan.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-15 16:51:40 +00:00
Snider
290a582656
feat(plugin): add review and sweep commands, update dispatch with persona
...
New commands:
- /core:review — review agent workspace output, diff, merge options
- /core:sweep — batch dispatch audit across all Go repos
Updated /core:dispatch with persona argument support.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-15 16:45:39 +00:00
Snider
d3bbda3698
fix(plugin): prefix commands with core: namespace to avoid clashes
...
/dispatch → /core:dispatch, /status → /core:status, etc.
Prevents collision with built-in Claude commands.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-15 14:50:35 +00:00