No description
Find a file
Snider b42cf5a18c feat(agent/agentic): 5-min background git fetch loop for registered repos
fetch_loop.go starts at PrepSubsystem.OnStartup, ticks on configurable
interval (default 5min), respects ctx.Done() for clean shutdown.
Each tick runs `git fetch origin <DefaultBranch>` via s.Core().Process()
— no worktree mutation.

Repo discovery sources (priority):
1. agents.fetch_repos in runtime config
2. repos / agents.*.repos in agents.yaml
3. Fallback scan of WorkspaceRoot() per RFC §7

Interval config: agents.fetch_interval, dispatch.fetch_interval, or
top-level fetch_interval in agents.yaml.

Loop survives individual repo failures (logs + continues — one bad
repo can't kill the loop).

Tests cover tick timing, failure isolation, ctx cancellation.

Co-authored-by: Codex <noreply@openai.com>
Closes tasks.lthn.sh/view.php?id=165
2026-04-25 20:24:21 +01:00
.agents/skills revert fcb9c189e5 2026-04-23 12:32:57 +01:00
.claude-plugin refactor(plugins): complete dappcore→core rename, add Gemini stub 2026-04-23 18:21:40 +01:00
.codex fix(codex): config.toml compat with codex CLI 0.122+ 2026-04-23 12:32:58 +01:00
.core fix(agent): tighten directory perms in .core/reference/ siblings (Athena #988) 2026-04-25 16:29:28 +01:00
.github/workflows revert fcb9c189e5 2026-04-23 12:32:57 +01:00
claude test(agent): NOSONAR annotations on httpx.MockTransport http:// fixtures (#939) 2026-04-25 12:12:56 +01:00
cmd/core-agent feat(agent): batch — sprint MCP tools + cmd cleanup (#142 #225 #226 #227) 2026-04-25 14:55:23 +01:00
codex revert fcb9c189e5 2026-04-23 12:32:57 +01:00
config revert fcb9c189e5 2026-04-23 12:32:57 +01:00
docker revert fcb9c189e5 2026-04-23 12:32:57 +01:00
docs docs(openbrain): alignment audit 2026-04-24 — PARTIAL verdict 2026-04-24 05:36:59 +01:00
google/gemini-cli refactor(plugins): complete dappcore→core rename, add Gemini stub 2026-04-23 18:21:40 +01:00
hermes docs(hermes): add openbrain-recall + openbrain-remember SKILL.md 2026-04-23 17:38:00 +01:00
php feat(core/events): add WebhookRegistering lifecycle event (HIGH) 2026-04-25 19:37:23 +01:00
pkg feat(agent/agentic): 5-min background git fetch loop for registered repos 2026-04-25 20:24:21 +01:00
plugins feat(agent/plugins): create plugins/{core-go,core-php,infra} tree (RFC.plugin-restructure §1+§2) 2026-04-25 20:05:05 +01:00
scripts revert fcb9c189e5 2026-04-23 12:32:57 +01:00
tests feat(ax-10): bring agent to v0.8.0-alpha.1 + CLI test scaffold 2026-04-24 23:48:34 +01:00
ui revert fcb9c189e5 2026-04-23 12:32:57 +01:00
.DS_Store revert fcb9c189e5 2026-04-23 12:32:57 +01:00
.gitattributes revert fcb9c189e5 2026-04-23 12:32:57 +01:00
.gitignore revert fcb9c189e5 2026-04-23 12:32:57 +01:00
.gitleaks.toml chore(security): add .gitleaks.toml for working-tree path allowlist (Athena #325 dev-exp) 2026-04-25 16:36:47 +01:00
.gitleaksignore chore(security): add .gitleaksignore for 18 documented false-positives 2026-04-25 01:13:00 +01:00
.mcp.json refactor(plugins): complete dappcore→core rename, add Gemini stub 2026-04-23 18:21:40 +01:00
AGENTS.md revert fcb9c189e5 2026-04-23 12:32:57 +01:00
CLAUDE.md revert fcb9c189e5 2026-04-23 12:32:57 +01:00
CODEX.md revert fcb9c189e5 2026-04-23 12:32:57 +01:00
composer.json fix(composer): autoload php/ not src/php/ to match actual tree layout 2026-04-23 15:43:39 +01:00
core-agent revert fcb9c189e5 2026-04-23 12:32:57 +01:00
core-agent.backup revert fcb9c189e5 2026-04-23 12:32:57 +01:00
go.mod feat(ax-10): bring agent to v0.8.0-alpha.1 + CLI test scaffold 2026-04-24 23:48:34 +01:00
go.sum revert fcb9c189e5 2026-04-23 12:32:57 +01:00
llm.txt revert fcb9c189e5 2026-04-23 12:32:57 +01:00
Makefile revert fcb9c189e5 2026-04-23 12:32:57 +01:00
README.md revert fcb9c189e5 2026-04-23 12:32:57 +01:00
repos.yaml revert fcb9c189e5 2026-04-23 12:32:57 +01:00
setup.sh revert fcb9c189e5 2026-04-23 12:32:57 +01:00
version.go revert fcb9c189e5 2026-04-23 12:32:57 +01:00
version_example_test.go revert fcb9c189e5 2026-04-23 12:32:57 +01:00

core-agent

A monorepo of Claude Code plugins for the Host UK federated monorepo.

Plugins

Plugin Description Commands
code Core development - hooks, scripts, data collection /code:remember, /code:yes
review Code review automation /review:review, /review:security, /review:pr
verify Work verification before commit/push /verify:verify, /verify:ready
qa Quality assurance fix loops /qa:qa, /qa:fix, /qa:check
ci CI/CD integration /ci:ci, /ci:workflow, /ci:fix

Installation

# Install all plugins via marketplace
claude plugin add host-uk/core-agent

# Or install individual plugins
claude plugin add host-uk/core-agent/claude/code
claude plugin add host-uk/core-agent/claude/review
claude plugin add host-uk/core-agent/claude/qa

Quick Start

# Code review staged changes
/review:review

# Run QA and fix all issues
/qa:qa

# Verify work is ready to commit
/verify:verify

# Check CI status
/ci:ci

Core CLI Integration

These plugins enforce the core CLI for development commands:

Instead of... Use...
go test core go test
go build core build
golangci-lint core go lint
composer test core php test
./vendor/bin/pint core php fmt

Plugin Details

code

The core plugin with hooks and data collection skills:

  • Hooks: Auto-format, debug detection, dangerous command blocking
  • Skills: Data collection for archiving OSS projects (whitepapers, forums, market data)
  • Commands: /code:remember (persist facts), /code:yes (auto-approve mode)

review

Code review automation:

  • /review:review - Review staged changes or commit range
  • /review:security - Security-focused review
  • /review:pr [number] - Review a pull request

verify

Work verification:

  • /verify:verify - Full verification (tests, lint, format, debug check)
  • /verify:ready - Quick check if ready to commit

qa

Quality assurance:

  • /qa:qa - Run QA pipeline, fix all issues iteratively
  • /qa:fix <issue> - Fix a specific issue
  • /qa:check - Check without fixing

ci

CI/CD integration:

  • /ci:ci - Check CI status
  • /ci:workflow <type> - Generate GitHub Actions workflow
  • /ci:fix - Analyse and fix failing CI

Development

Adding a new plugin

  1. Create claude/<name>/.claude-plugin/plugin.json
  2. Add commands to claude/<name>/commands/
  3. Add hooks to claude/<name>/hooks.json (optional)
  4. Register in .claude-plugin/marketplace.json

Testing locally

claude plugin add /path/to/core-agent

License

EUPL-1.2