Merge discourse-cli into tooling-cli/discourse and drop the
discourse-cli/.env source path from the rules. The canonical
invocation now uses ~/.creds/discourse.env (system-independent)
with the registry image. Marks Q2 (bin/ wrapper gap) resolved.
💘 Generated with Crush
Assisted-by: Crush:glm-5.2
Add three policy updates to AGENTS.md and BASELINE-PROMPT.md:
1. Prefer awk/sed/grep/cut/tr for file editing over built-in harness
edit tools, which can be unreliable with whitespace and indentation.
2. Host hygiene is inviolable: only git, docker, and Unix utilities on
the host. One-off tools get docker-pulled; broadly useful tools get
a Redmine ticket for the human to install via package manager.
3. Never install language runtimes or non-base tools on the host.
💘 Generated with Crush
Assisted-by: Crush
Three new rules added to AGENTS.md and BASELINE-PROMPT.md:
1. Code/docs/tests must be kept in sync at all times — update all three
in the same commit when making changes.
2. Redmine and Discourse must cross-reference each other — every ticket
links to its Discourse doc and vice versa.
3. Commits must reference Redmine tickets ([#NNN]); PRs must link to
both Redmine and Discourse.
💘 Generated with Crush
Assisted-by: Crush
The framework supports both technical operations (SSH/screen/CLI/harness)
and knowledge work (Hermes/OWUI/Conduit via MCP/API). The Makefile is
restored as a convenience layer over the scripts — use make or call
scripts directly, whichever fits the interface you're working through.
README rewritten with a Mode 1 / Mode 2 comparison table. AGENTS.md key
commands now show both make and direct script invocation. ADOPTING.md
updated to use make shorthand.
The scripts remain the real entry points; make is shorthand. Mode 2
agents invoke the same scripts via container exec or MCP tool calls.
💘 Generated with Crush
Assisted-by: Crush via Crush <crush@charm.land>
The primary value is the knowledge layer (markdown files that any agent
reads — Crush, OpenWebUI, Hermes, Conduit on iPhone). CLI tooling
(scripts, git hooks) is optional, for projects that use git/docker.
Changes:
- Remove Makefile entirely. All commands are now direct script invocations
(bash scripts/check-rules.sh, bash scripts/setup-hooks.sh, etc.)
- Add scripts/test.sh stub (replaces make test)
- check-rules.sh: test-suite check now calls scripts/test.sh, not make test
- Rewrite README as three-layer architecture: knowledge → git hooks → docker
- Update all docs (AGENTS.md, BASELINE-PROMPT.md, ADOPTING.md, PATTERNS.md,
STATUS.md) to remove every make reference
The framework now works for:
- CLI/harness users (git hooks + scripts + AGENTS.md)
- Non-CLI users (BASELINE-PROMPT.md loaded into any agent's system prompt)
💘 Generated with Crush
Assisted-by: Crush via Crush <crush@charm.land>
Remove references to crush.json, hooks/, and Crush-specific enforcement
from README, AGENTS.md, BASELINE-PROMPT.md, and PATTERNS.md. Generalize
the commit footer to be harness-agnostic (<harness/tool> placeholder).
Update PATTERNS.md decisions and scorecard to reflect the reversal:
Crush hooks were studied but deliberately not shipped.
The only remaining Crush mention explicitly states it is avoided for
portability. The .crush/memory/ dir is kept as an optional Crush feature.
💘 Generated with Crush
Assisted-by: Crush via Crush <crush@charm.land>
Declare GNU Affero General Public License v3.0 for the template repo.
All projects created from this template inherit AGPLv3 unless overridden.
💘 Generated with Crush
Assisted-by: Crush via Crush <crush@charm.land>
Apply answers to questions-v1.md (Q1–Q5):
- Q4: Remove crush.json and hooks/ entirely. All enforcement is now portable
via git hooks (pre-commit/pre-push) + check-rules.sh + AGENTS.md prose.
Works under Crush, OpenWebUI, Hermes, or any agent framework.
- Q5: Remove docs/JOURNAL.md. Redmine is the system of record for work;
Discourse for docs. JOURNAL.md was a stopgap.
- Q3: Add mandatory Discourse pointer-header check to check-rules.sh. Any
non-exempt tracked .md without a Discourse URL FAILs. All projects, no
exceptions.
- Q2: Reference real CLI container invocation paths
(KNEL-AIMiddleware/{redmine,discourse}-cli/) in AGENTS.md instead of the
missing bin/ shortcuts.
- Q1: Note tea + docker login are preconfigured on TSYS workstations.
Also: make test default is now no-op pass so the template self-validates;
make validate now passes clean on the repo itself (17 PASS / 0 FAIL).
💘 Generated with Crush
Assisted-by: Crush via Crush <crush@charm.land>
Extract patterns from 18 projects across two machines (12 local infra +
6 remote personal/business via ssh survey). Ship a reusable Gitea template
with AGENTS.md, 5 Crush PreToolUse hooks, git pre-commit/pre-push, a
generalized rules engine, shared bash library, Makefile, lifecycle scripts,
and gardening loop. Includes the canonical BASELINE-PROMPT.md (13 sections)
and PATTERNS.md (standardization scorecard).
The repo self-applies: it passes its own shellcheck (zero info-level),
make fast, and all check-rules.sh checks.
💘 Generated with Crush
Assisted-by: Crush via Crush <crush@charm.land>