No description
Three related fixes so the brain DB works on Postgres, not just MariaDB:
1. config.php — brain charset/collation was hardcoded to utf8mb4 which
Postgres rejects as client_encoding. Now driver-aware: utf8 for
pgsql, utf8mb4 otherwise. Override via BRAIN_DB_CHARSET env var.
2. Migration 000008 (create_brain_memories) — self-referential FK on
supersedes_id was declared inside Schema::create{}, causing Postgres
to evaluate it before the PK index existed ('no unique constraint
matching given keys'). Split into Schema::create + separate
Schema::table to guarantee PK is in place when FK is added.
3. Migration 000009 (drop workspace FK) — try/catch inside the Blueprint
closure couldn't catch deferred SQL failures. Replaced with a
constraint-exists pre-query against information_schema, supporting
both pgsql and mariadb/mysql drivers. Fresh installs no longer fail
trying to drop a constraint that was never created.
Co-Authored-By: Virgil <virgil@lethean.io>
|
||
|---|---|---|
| .agents/skills | ||
| .claude-plugin | ||
| .codex | ||
| .core | ||
| .github/workflows | ||
| claude | ||
| cmd/core-agent | ||
| codex | ||
| config | ||
| docker | ||
| docs | ||
| php | ||
| pkg | ||
| scripts | ||
| tests | ||
| ui | ||
| .DS_Store | ||
| .gitattributes | ||
| .gitignore | ||
| .mcp.json | ||
| AGENTS.md | ||
| CLAUDE.md | ||
| CODEX.md | ||
| composer.json | ||
| core-agent | ||
| core-agent.backup | ||
| go.mod | ||
| go.sum | ||
| llm.txt | ||
| Makefile | ||
| README.md | ||
| repos.yaml | ||
| setup.sh | ||
| version.go | ||
| version_example_test.go | ||
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
- Create
claude/<name>/.claude-plugin/plugin.json - Add commands to
claude/<name>/commands/ - Add hooks to
claude/<name>/hooks.json(optional) - Register in
.claude-plugin/marketplace.json
Testing locally
claude plugin add /path/to/core-agent
License
EUPL-1.2