Closes #457. The bash framework installer only seeded AGENTS.md and STANDARDS.md from defaults/, even though TOOLS.md is listed in PRESERVE_PATHS and AGENTS.md declares it as mandatory reading at position 5 of the load order. A fresh bootstrap install therefore left ~/.config/mosaic/TOOLS.md missing and the agent contract pointing at a non-existent file. Fixes: - packages/mosaic/framework/install.sh — extend the explicit defaults-seed loop from "AGENTS.md STANDARDS.md" to "AGENTS.md STANDARDS.md TOOLS.md". - packages/mosaic/src/config/file-adapter.ts — replace the greedy readdirSync loop in syncFramework with an exported DEFAULT_SEED_FILES whitelist, so the TS wizard no longer silently seeds the Jarvis-flavored defaults/SOUL.md, placeholder defaults/USER.md, or internal README.md/AUDIT-*.md into the mosaic home. Also align preservePaths with the bash PRESERVE_PATHS list (AGENTS.md, STANDARDS.md, sources, and credentials were previously missing) so both install paths have the same upgrade-preservation semantics. - packages/mosaic/framework/templates/TOOLS.md.template — replace stale ~/.config/mosaic/rails/ references with ~/.config/mosaic/tools/. The rails/ tree was renamed to tools/ in the v1→v2 framework migration. Tests: - packages/mosaic/src/config/file-adapter.test.ts (new, 5 tests): pins the whitelist, asserts SOUL.md/USER.md/README.md/AUDIT-*.md are not seeded, verifies existing user contract files (including AGENTS.md) survive a keep-mode sync, and asserts a no-op when defaults/ is absent. Baselines: mosaic typecheck / lint green. Full mosaic vitest 275/276 — the one failure (src/commands/uninstall.spec.ts:138) is a pre-existing EACCES issue on main and is unrelated to this change. Repo-wide typecheck / lint / format:check green. Live smoke of `bash framework/install.sh` against a tmp MOSAIC_HOME confirms the installer now prints "Seeded TOOLS.md from defaults" and the file lands. Ships in @mosaicstack/mosaic 0.0.30. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
57 lines
1.4 KiB
Plaintext
57 lines
1.4 KiB
Plaintext
# Machine-Level Tool Reference
|
|
|
|
Centralized reference for tools, credentials, and CLI patterns available across all projects.
|
|
Project-specific tooling belongs in the project's `AGENTS.md`, not here.
|
|
|
|
## Mosaic Git Wrappers (Use First)
|
|
|
|
Mosaic wrappers at `~/.config/mosaic/tools/git/*.sh` handle platform detection and edge cases. Always use these before raw CLI commands.
|
|
|
|
```bash
|
|
# Issues
|
|
~/.config/mosaic/tools/git/issue-create.sh
|
|
~/.config/mosaic/tools/git/issue-close.sh
|
|
|
|
# PRs
|
|
~/.config/mosaic/tools/git/pr-create.sh
|
|
~/.config/mosaic/tools/git/pr-merge.sh
|
|
|
|
# Milestones
|
|
~/.config/mosaic/tools/git/milestone-create.sh
|
|
|
|
# CI queue guard (required before push/merge)
|
|
~/.config/mosaic/tools/git/ci-queue-wait.sh --purpose push|merge
|
|
```
|
|
|
|
## Code Review (Codex)
|
|
|
|
```bash
|
|
# Code quality review
|
|
~/.config/mosaic/tools/codex/codex-code-review.sh --uncommitted
|
|
|
|
# Security review
|
|
~/.config/mosaic/tools/codex/codex-security-review.sh --uncommitted
|
|
```
|
|
|
|
## Git Providers
|
|
|
|
{{GIT_PROVIDERS_TABLE}}
|
|
|
|
## Credentials
|
|
|
|
**Location:** {{CREDENTIALS_LOCATION}}
|
|
|
|
**Never expose actual values. Never commit credential files.**
|
|
|
|
## CLI Gotchas
|
|
|
|
(Add platform-specific CLI gotchas as you discover them.)
|
|
|
|
{{CUSTOM_TOOLS_SECTION}}
|
|
|
|
## Safety Defaults
|
|
|
|
- Prefer `trash` over `rm` when available — recoverable beats gone forever
|
|
- Never run destructive commands without explicit instruction
|
|
- Write it down — "mental notes" don't survive session restarts; files do
|