@brickhouse-tech/sync-agents 0.3.6 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +23 -3
  2. package/package.json +6 -6
package/README.md CHANGED
@@ -76,12 +76,19 @@ SHA-256 checksums are published alongside each release as `checksums.txt`.
76
76
  │ └── rollout.md
77
77
  ├── specs/ # optional: durable design/requirements docs (what/why)
78
78
  │ └── SPEC-001.md
79
+ ├── adrs/ # optional: Architecture Decision Records, status = subdirectory
80
+ │ ├── proposed/
81
+ │ │ └── adopt-grpc.md
82
+ │ ├── accepted/
83
+ │ │ └── use-postgres.md
84
+ │ └── denied/ # kept but never indexed — prevents re-proposing rejected decisions
85
+ │ └── use-mongo.md
79
86
  └── STATE.md
80
87
  ```
81
88
 
82
89
  > **Note:** Skills use a directory layout (`skills/name/SKILL.md`) rather than flat files. This allows skills to include supporting files alongside their definition. The `fix` command can convert legacy flat skill files to the directory layout automatically.
83
90
 
84
- > **Optional buckets:** `agents/`, `plans/`, and `specs/` activate only when their directory exists — `init` does not create them, `add agent|plan|spec <name>` does. They sync to Claude only (`.claude/agents`, `.claude/plans`, `.claude/specs`); other tools consume plans/specs through the `AGENTS.md` index and have no subagent surface. `plans/` and `specs/` share plumbing but differ in lifecycle: specs are durable what/why documents, plans are per-effort how/when documents that retire when the effort lands.
91
+ > **Optional buckets:** `agents/`, `plans/`, `specs/`, `hooks/`, and `adrs/` activate only when their directory exists — `init` does not create them, `add agent|plan|spec|hook|adr <name>` does. They sync to Claude only (`.claude/agents`, `.claude/plans`, `.claude/specs`); other tools consume plans/specs through the `AGENTS.md` index and have no subagent surface. `plans/` and `specs/` share plumbing but differ in lifecycle: specs are durable what/why documents, plans are per-effort how/when documents that retire when the effort lands.
85
92
 
86
93
  Running `sync-agents sync` creates symlinks from `.agents/` subdirectories into `.claude/`, `.windsurf/`, `.cursor/`, and `.github/copilot/`. Any changes to `.agents/` are automatically reflected in the target directories because they are symlinks, not copies.
87
94
 
@@ -99,13 +106,14 @@ AGENTS.md is also symlinked to CLAUDE.md so that Claude reads the index natively
99
106
  | `sync` | Create symlinks from `.agents/` into all target directories, and symlink `AGENTS.md` to `CLAUDE.md` |
100
107
  | `watch` | Watch `.agents/` for changes and auto-regenerate `AGENTS.md` |
101
108
  | `import <url>` | Import a rule/skill/workflow from a URL |
102
- | `hook` | Install a pre-commit git hook for auto-sync |
109
+ | `git-hook` | Install a pre-commit git hook for auto-sync (`hook` remains a deprecated alias until v1.0) |
103
110
  | `inherit <label> <path>` | Add an inheritance link to AGENTS.md |
104
111
  | `inherit --list` | List current inheritance links |
105
112
  | `inherit --remove <label>` | Remove an inheritance link by label |
106
113
  | `status` | Show the current sync status of all targets and symlinks |
107
- | `add <type> <name>` | Add a new artifact from a template (type is `rule`, `skill`, `workflow`, `agent`, `plan`, or `spec`) |
114
+ | `add <type> <name>` | Add a new artifact from a template (type is `rule`, `skill`, `workflow`, `agent`, `plan`, `spec`, `hook`, or `adr`) |
108
115
  | `index [--no-fix]` | Regenerate `AGENTS.md` by scanning `.agents/`. Backfills fixable skill frontmatter first (`--no-fix` skips the backfill) |
116
+ | `adr <accept\|deny\|propose> <name>` | Move an ADR between status directories, update its `status:` frontmatter, and reindex |
109
117
  | `lint [skills] [--fix]` | Validate SKILL.md frontmatter against [Claude's skill authoring rules](https://platform.claude.com/docs/en/agents-and-tools/agent-skills/best-practices); `--fix` amends fixable findings in place |
110
118
  | `clean` | Remove all synced symlinks and empty target directories (does not remove `.agents/`) |
111
119
  | `fix [type]` | Migrate legacy dirs into `.agents/`, convert flat skill files to directory layout, and repair broken symlinks. Type: any bucket dir, or `all` (default) |
@@ -185,6 +193,18 @@ sync-agents lint
185
193
  sync-agents lint --fix
186
194
  ```
187
195
 
196
+ ## ADRs (Architecture Decision Records)
197
+
198
+ ADRs live in `.agents/adrs/` with **status encoded by subdirectory**: `proposed/`, `accepted/`, `denied/`. `add adr <name>` scaffolds into `proposed/`; `sync-agents adr accept|deny|propose <name>` moves a record between statuses (nested grouping subdirs are preserved) and regenerates the index.
199
+
200
+ Only **accepted and proposed** records appear in `AGENTS.md`. Denied records are kept on disk and the index carries a standing note telling agents to check `.agents/adrs/denied/` before proposing a new ADR — so already-rejected decisions don't get re-proposed.
201
+
202
+ ```bash
203
+ sync-agents add adr use-postgres # → .agents/adrs/proposed/use-postgres.md
204
+ sync-agents adr accept use-postgres # → .agents/adrs/accepted/, reindexed
205
+ sync-agents adr deny use-postgres # → .agents/adrs/denied/, dropped from index
206
+ ```
207
+
188
208
  ## Inheritance
189
209
 
190
210
  Projects can inherit agent rules from parent directories (org, team, global) using a convention-based approach. This enables hierarchical rule sharing without duplicating files.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@brickhouse-tech/sync-agents",
3
- "version": "0.3.6",
3
+ "version": "1.0.0",
4
4
  "description": "Simple scripts to DRY up common agent interactions across multiple LLM providers.",
5
5
  "keywords": [
6
6
  "agents",
@@ -26,11 +26,11 @@
26
26
  "bin/sync-agents.js"
27
27
  ],
28
28
  "optionalDependencies": {
29
- "@brickhouse-tech/sync-agents-darwin-arm64": "0.3.6",
30
- "@brickhouse-tech/sync-agents-darwin-x64": "0.3.6",
31
- "@brickhouse-tech/sync-agents-linux-arm64": "0.3.6",
32
- "@brickhouse-tech/sync-agents-linux-x64": "0.3.6",
33
- "@brickhouse-tech/sync-agents-win32-x64": "0.3.6"
29
+ "@brickhouse-tech/sync-agents-darwin-arm64": "1.0.0",
30
+ "@brickhouse-tech/sync-agents-darwin-x64": "1.0.0",
31
+ "@brickhouse-tech/sync-agents-linux-arm64": "1.0.0",
32
+ "@brickhouse-tech/sync-agents-linux-x64": "1.0.0",
33
+ "@brickhouse-tech/sync-agents-win32-x64": "1.0.0"
34
34
  },
35
35
  "overrides": {
36
36
  "file-type": ">=22",