pluribus-context 0.3.32 → 0.3.34

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.
package/CHANGELOG.md CHANGED
@@ -4,6 +4,14 @@
4
4
 
5
5
  All notable changes to Pluribus are documented here.
6
6
 
7
+ ## 0.3.34 - 2026-05-26
8
+
9
+ - Repositioned README and the community review packet around privacy-safe agent context receipts first, with instruction-file audit/sync as the supporting workflow, so directory reviewers do not mistake Pluribus for another generic ContextOps, memory, RAG, or rules-sync tool.
10
+
11
+ ## 0.3.33 - 2026-05-26
12
+
13
+ - Added Agent Skill metadata frontmatter and a `/usage` attribution smoke to the context receipts skill so directory reviewers can evaluate it as a standard SKILL.md and connect receipts to component-level usage breakdowns.
14
+
7
15
  ## 0.3.32 - 2026-05-26
8
16
 
9
17
  - Added an executable compaction transaction/rollback receipt fixture for failed `/compact` runs, proving summary failure, `swap_committed=false`, original-context preservation, restored deferred-tool registry/system-reminder queue, and no stale reminder replay without logging raw transcript/tool output.
package/README.md CHANGED
@@ -6,15 +6,15 @@
6
6
  [![Building in Public](https://img.shields.io/badge/building-in%20public-orange?style=flat-square)](https://x.com/RibeiroCaioCLW)
7
7
  [![License: MIT](https://img.shields.io/badge/license-MIT-blue?style=flat-square)](LICENSE)
8
8
 
9
- > Detect where AI-agent context loses fidelity across toolsthen sync the parts that can be safely shared.
9
+ > Privacy-safe context receipts for AI coding agents plus audits/sync for the instruction files they actually load.
10
10
 
11
- Pluribus (`pluribus-context` on npm, `pluribus` on the command line) is an AI context sync CLI with AI-agent context fidelity audit for teams and projects that use Claude Code, Cursor, GitHub Copilot, OpenClaw, Windsurf, Continue, Zed, or Bob.
11
+ Pluribus (`pluribus-context` on npm, `pluribus` on the command line) is a CLI for **agent context evidence**. It helps teams answer: what instruction file, skill, MCP/tool schema, memory/RAG result, compaction, pruning step, or generated rule actually crossed an agent boundary — without logging raw prompts, source code, tool output, paths, transcripts, secrets, or customer data.
12
12
 
13
- It shows where instructions keep their semantics, where they are downgraded to a generic fallback, and where manual activation or native discovery matters then keeps project instructions, conventions, constraints, and team context in one versioned source of truth.
13
+ The original sync workflow is still useful: Pluribus can keep project instructions, conventions, constraints, and team context in one versioned `pluribus.md` source of truth, then generate native files for Claude Code, Cursor, GitHub Copilot, OpenClaw, Windsurf, Continue, Zed, and Bob. The sharper wedge is evidence: read-only audits and receipts show where context keeps fidelity, downgrades to a generic fallback, duplicates, stays deferred, hydrates, gets pruned, or rolls back after failed compaction.
14
14
 
15
- It is **not** a persistent memory layer, retrieval system, agent orchestrator, or agent-merging framework. Think `CLAUDE.md`, `.cursorrules`, `copilot-instructions.md`, `AGENTS.md` one intentional context, multiple generated outputs.
15
+ It is **not** a persistent memory layer, retrieval system, agent orchestrator, enterprise ContextOps platform, or agent-merging framework. Think evidence for context boundaries: `CLAUDE.md`, `.cursorrules`, `copilot-instructions.md`, `AGENTS.md`, MCP Tool Search, Agent Skills, RAG/code-search, pruning, and compaction — with privacy-safe receipts instead of raw content dumps.
16
16
 
17
- **Reviewer shortcut:** evaluating Pluribus for a list, newsletter, package roundup, or tool directory? Use the [Community Review Packet](docs/community-review-packet.md) for copy-paste directory submission fields, safety/removability notes, feedback links, and a disposable 60-second smoke test. If you only run one command, try `npx --yes pluribus-context@latest audit --json --fidelity-report` to see native discovery surfaces, generic fallbacks, load evidence, duplicate-load selection evidence, manual activation requirements, effective context scope, and semantic differences. For the newer agent-observability wedge, start with [context-budget receipts](docs/context-budget-receipts.md): privacy-safe evidence for what MCP schemas, skills, memory, subagents, CLI help, or summaries actually crossed an agent boundary. If you want the same idea as a copyable skill, use the [context-receipts Agent Skill recipe](examples/agent-skills/context-receipts/). npm `latest` is currently aligned with the GitHub release; the review packet also documents a GitHub-release smoke fallback for future release-lag windows.
17
+ **Reviewer shortcut:** evaluating Pluribus for a list, newsletter, package roundup, or tool directory? Use the [Community Review Packet](docs/community-review-packet.md) for copy-paste directory submission fields, safety/removability notes, feedback links, and disposable 60-second smoke tests. If you only run one command for the cross-tool audit, try `npx --yes pluribus-context@latest audit --json --fidelity-report` to see native discovery surfaces, generic fallbacks, load evidence, duplicate-load selection evidence, manual activation requirements, effective context scope, and semantic differences. For the agent-observability wedge, start with [context-budget receipts](docs/context-budget-receipts.md): privacy-safe evidence for what MCP schemas, skills, memory, subagents, CLI help, retrieval chunks, pruning runs, or compaction summaries crossed an agent boundary. If you want the same idea as a copyable skill, use the [context-receipts Agent Skill recipe](examples/agent-skills/context-receipts/). npm `latest` is currently aligned with the GitHub release; the review packet also documents a GitHub-release smoke fallback for future release-lag windows.
18
18
 
19
19
  ---
20
20
 
@@ -4,11 +4,11 @@ Use this when reviewing Pluribus for a list, newsletter, package roundup, or too
4
4
 
5
5
  ## One-line description
6
6
 
7
- Pluribus keeps intentional AI coding context in one `pluribus.md` source of truth, then syncs or audits the tool-specific files used by Claude Code, Cursor, Copilot, OpenClaw, Windsurf, Continue, Zed, and Bob.
7
+ Pluribus provides privacy-safe context receipts for AI coding agents, plus audits/sync for the instruction files used by Claude Code, Cursor, Copilot, OpenClaw, Windsurf, Continue, Zed, and Bob.
8
8
 
9
9
  ## Short listing copy
10
10
 
11
- Pluribus is an open-source CLI for teams and solo developers who use multiple AI coding tools. It treats project instructions, conventions, constraints, and shared team context as versioned Markdown, then generates each tool's expected context file (`CLAUDE.md`, `.cursorrules`, Copilot instructions, `AGENTS.md`, Windsurf/Continue rules, Zed rules, and Bob rules). The safest first command is a read-only audit:
11
+ Pluribus is an open-source CLI for teams and solo developers who need evidence about agent context boundaries. It emits privacy-safe receipts for what crossed, stayed deferred, duplicated, got pruned, or rolled back across MCP tools, Agent Skills, memory/RAG retrieval, subagents, compaction, and generated instruction files — without logging raw prompts, code, schemas, tool outputs, transcripts, paths, secrets, or customer data. It also treats project instructions, conventions, constraints, and shared team context as versioned Markdown, then generates each tool's expected context file (`CLAUDE.md`, `.cursorrules`, Copilot instructions, `AGENTS.md`, Windsurf/Continue rules, Zed rules, and Bob rules). The safest first command is a read-only audit:
12
12
 
13
13
  ```bash
14
14
  npx --yes pluribus-context@latest audit
@@ -25,10 +25,10 @@ Use these fields for directories, awesome lists, or review forms that ask for a
25
25
  | npm | https://www.npmjs.com/package/pluribus-context |
26
26
  | License | MIT |
27
27
  | Install / run | `npx --yes pluribus-context@latest audit` or `npm install -g pluribus-context@latest` |
28
- | Category | AI coding tools / context management |
29
- | Tags | `claude-code`, `cursor`, `copilot`, `openclaw`, `windsurf`, `continue`, `zed`, `bob`, `context-drift` |
30
- | One sentence | Keep one versioned AI coding context in `pluribus.md`, then audit or sync the generated files used by Claude Code, Cursor, Copilot, OpenClaw, Windsurf, Continue, Zed, and Bob. |
31
- | 280-char blurb | Pluribus is an open-source CLI for intentional AI coding context. It keeps project guidance in one `pluribus.md`, then audits or syncs `CLAUDE.md`, Cursor rules, Copilot instructions, `AGENTS.md`, Windsurf/Continue rules, Zed rules, and Bob rules. |
28
+ | Category | AI coding tools / agent observability / context management |
29
+ | Tags | `claude-code`, `cursor`, `copilot`, `openclaw`, `windsurf`, `continue`, `zed`, `bob`, `context-receipts`, `context-drift`, `mcp`, `agent-skills`, `opentelemetry` |
30
+ | One sentence | Emit privacy-safe receipts for what context crossed agent boundaries, and audit or sync the generated instruction files used by Claude Code, Cursor, Copilot, OpenClaw, Windsurf, Continue, Zed, and Bob. |
31
+ | 280-char blurb | Pluribus is an open-source CLI for agent context evidence. It emits privacy-safe receipts for MCP/tools, skills, memory/RAG, pruning and compaction boundaries, then audits or syncs AI instruction files like `CLAUDE.md`, Cursor rules, Copilot instructions, and `AGENTS.md`. |
32
32
  | Safe first command | `npx --yes pluribus-context@latest audit` |
33
33
 
34
34
  ### Awesome-list Markdown entry
@@ -36,7 +36,7 @@ Use these fields for directories, awesome lists, or review forms that ask for a
36
36
  Use this exact line when a curated list accepts one Markdown bullet per tool:
37
37
 
38
38
  ```markdown
39
- - [Pluribus](https://github.com/caioribeiroclw-pixel/pluribus) - Open-source CLI that keeps one versioned AI coding context in sync across Claude Code, Cursor, Copilot, OpenClaw, Windsurf, Continue, Zed, and Bob.
39
+ - [Pluribus](https://github.com/caioribeiroclw-pixel/pluribus) - Open-source CLI for privacy-safe agent context receipts, plus audits/sync for AI instruction files across Claude Code, Cursor, Copilot, OpenClaw, Windsurf, Continue, Zed, and Bob.
40
40
  ```
41
41
 
42
42
  ## Why it may be useful
@@ -52,12 +52,12 @@ Use this section when a directory, list maintainer, or reviewer asks how Pluribu
52
52
 
53
53
  | Question | Short answer |
54
54
  | --- | --- |
55
- | What category is it? | AI coding context management / rules sync CLI. |
56
- | What is the source of truth? | `pluribus.md`, reviewed in git. |
57
- | What does it generate? | Tool-native context files for Claude Code, Cursor, Copilot, OpenClaw, Windsurf, Continue, Zed, and Bob. |
55
+ | What category is it? | Agent context evidence / AI coding context management / rules sync CLI. |
56
+ | What is the source of truth? | For sync: `pluribus.md`, reviewed in git. For receipts: counts, hashes, buckets, lifecycle states, and privacy flags generated from the tool/harness boundary being audited. |
57
+ | What does it generate? | Tool-native context files for Claude Code, Cursor, Copilot, OpenClaw, Windsurf, Continue, Zed, and Bob; receipt fixtures/trace shapes for context-budget, retrieval, pruning, compaction, Tool Search, subagent, and skill boundaries. |
58
58
  | What is the safe first step? | Run `npx --yes pluribus-context@latest audit` to inspect existing context files without writing. |
59
59
  | When is another tool enough? | If you only need one tool's native rules format or a one-time converter, a smaller rules manager/converter may be enough. |
60
- | What is Pluribus not? | Not chat memory, retrieval, vector search, agent orchestration, or agent merging. |
60
+ | What is Pluribus not? | Not chat memory, retrieval, vector search, agent orchestration, enterprise ContextOps, or agent merging. |
61
61
 
62
62
  ## Safety and removability
63
63
 
@@ -43,6 +43,28 @@ A useful receipt starts small:
43
43
 
44
44
  Keep exact counts when they are not sensitive. Bucket token counts and sizes when exact values could reveal private workload shape.
45
45
 
46
+ ## Code-search / retrieval receipts
47
+
48
+ Semantic code-search MCPs and RAG-over-repo tools can reduce context bloat by returning only relevant chunks. The observability gap is that retrieval and agent-loading are two different boundaries: a tool may return five chunks, a client may dedupe or stale-filter two of them, and only three may actually enter the agent context.
49
+
50
+ The receipt should prove:
51
+
52
+ - the indexed snapshot/version used, without raw local paths or embedding secrets;
53
+ - the search request identity/category, without raw query text or filters;
54
+ - returned result identities, ranks, score buckets, stale/duplicate markers, and path hashes/extensions/range buckets;
55
+ - which returned chunks were loaded into agent context versus suppressed by the client/harness; and
56
+ - raw code, private paths, prompts, customer names, URLs, tokens, and ticket text stayed out of the receipt.
57
+
58
+ Runnable fixture:
59
+
60
+ ```bash
61
+ node examples/context-input-evidence/convert-code-search-retrieval-log.mjs
62
+ ```
63
+
64
+ Public trace:
65
+
66
+ - `examples/context-input-evidence/code-search-retrieval-otel-trace.json`
67
+
46
68
  ## Post-hoc pruning / context cleaning
47
69
 
48
70
  Context-cleaning tools can reduce a bloated session after context has already entered the transcript. That creates a separate proof boundary from lazy loading: what was pruned, minified, stubbed, deduped, protected, and backed up?
@@ -197,6 +197,21 @@ It reads `sample-mcp-tool-search-log.jsonl` and writes `mcp-tool-search-receipt.
197
197
 
198
198
  This is for Claude Code/MCP context-budget work where Tool Search reduces context bloat but still needs verifiable boundaries. The receipt should prove “only indexes were loaded up front; this one definition was loaded when needed; private query/arguments/results stayed out of the trace.”
199
199
 
200
+ To test semantic code-search retrieval — where a code-search MCP returns multiple ranked chunks but the client/harness may dedupe stale or duplicate results before loading only a subset into the agent context — run:
201
+
202
+ ```bash
203
+ node examples/context-input-evidence/convert-code-search-retrieval-log.mjs
204
+ ```
205
+
206
+ It reads `sample-code-search-retrieval-log.jsonl` and writes `code-search-retrieval-receipt.ndjson` plus `code-search-retrieval-otel-trace.json`. The sample emits:
207
+
208
+ - `code.index.snapshot.used` — snapshot, codebase path hash, git commit hash, indexed file/chunk buckets, and privacy flags.
209
+ - `code.search.performed` — query hash/category, filter hash, top-k, and candidate-count bucket.
210
+ - `code.search.result.returned` — rank, score bucket, chunk hash, path hash/extension, line-range bucket, stale/duplicate flags, and whether the result was loaded into agent context.
211
+ - `context.input.loaded` — loaded versus suppressed chunk counts, suppression reason hashes/categories, token bucket, and explicit audit gap.
212
+
213
+ The fixture intentionally includes raw private code snippets, local paths, URLs, tokens, customer names, emails, and ticket ids in the synthetic input, then verifies those strings do not appear in the receipt or trace. This is for Claude Context / code-search MCP / RAG-over-repo workflows where “search returned” and “agent loaded” need separate evidence.
214
+
200
215
  To test CLI progressive disclosure — where an agent receives a tiny CLI prompt first, loads specific command help only when needed, and executes the CLI instead of loading a full OpenAPI spec or MCP schema set — run:
201
216
 
202
217
  ```bash
@@ -1,6 +1,11 @@
1
+ ---
2
+ name: context-receipts
3
+ description: Emit privacy-safe receipts for context selection, deferral, hydration, compaction, pruning, delegation, usage attribution, and boundary handoffs.
4
+ ---
5
+
1
6
  # Context Receipts
2
7
 
3
- Use this skill when an agent workflow claims to save context by selecting, deferring, hydrating, summarizing, compacting, pruning, delegating, or isolating context.
8
+ Use this skill when an agent workflow claims to save context by selecting, deferring, hydrating, summarizing, compacting, pruning, delegating, attributing usage, or isolating context.
4
9
 
5
10
  The job is not to log the private content. The job is to emit a small receipt that lets a reviewer answer:
6
11
 
@@ -95,6 +100,46 @@ Minimal JSONL event names:
95
100
  {"event":"subagent.toolsearch.matrix.completed","tested_axis":"tools_frontmatter_shape","audit_gap":"proves ToolSearch exposure, not semantic tool relevance or runtime call success"}
96
101
  ```
97
102
 
103
+ ## Retrieval / code-search smoke
104
+
105
+ For semantic code search, repo RAG, or MCP tools such as Claude Context, separate "search returned" from "agent context loaded":
106
+
107
+ - which index snapshot/version was used, without raw local codebase paths;
108
+ - what query/category/filter identity selected the candidates, without raw query text;
109
+ - which result ids/chunk hashes were returned, with rank, score bucket, stale flag, duplicate marker, path hash/extension, and range bucket;
110
+ - which returned chunks were actually loaded into the agent context;
111
+ - which chunks were suppressed as duplicate, stale, clipped, policy-blocked, or over budget;
112
+ - whether raw code, raw prompts, raw paths, customer names, URLs, secrets, and ticket text stayed out of the receipt;
113
+ - the audit gap: this proves retrieval/loading boundaries, not semantic answer quality.
114
+
115
+ Minimal JSONL event names:
116
+
117
+ ```jsonl
118
+ {"event":"code.index.snapshot.used","snapshot_id_hash":"sha256:...","codebase_path_hash":"sha256:...","indexed_chunk_count_bucket":"over_1k","raw_codebase_path_copied":false}
119
+ {"event":"code.search.performed","query_hash":"sha256:...","query_category":"auth_debug","candidate_count_bucket":"over_1k","raw_query_copied":false}
120
+ {"event":"code.search.result.returned","rank":1,"chunk_id_hash":"sha256:...","chunk_text_hash":"sha256:...","path_hash":"sha256:...","score_bucket":"high","stale":false,"raw_code_copied":false}
121
+ {"event":"context.input.loaded","kind":"retrieved_code_chunks","loaded_chunk_count":3,"suppressed_chunk_count":2,"suppression_reasons":["duplicate","stale_snapshot_chunk"],"raw_code_copied":false}
122
+ ```
123
+
124
+ ## Usage attribution smoke
125
+
126
+ For `/usage`, `/context`, `/doctor`, or other context-budget breakdowns, map each displayed category to evidence that can be reviewed without exposing private content:
127
+
128
+ - what measurement window was used;
129
+ - which categories were attributed, such as skills, subagents, plugins, MCP servers, rules, memory, or project files;
130
+ - which components were loaded, deferred, hydrated, suppressed, pruned, or rolled back;
131
+ - before/after or current token/cost buckets by category;
132
+ - whether raw skill bodies, prompts, MCP schemas, tool outputs, and file paths were excluded;
133
+ - the remaining audit gap, such as not proving semantic usefulness of a high-cost component.
134
+
135
+ Minimal JSONL event names:
136
+
137
+ ```jsonl
138
+ {"event":"context.usage.window.measured","window":"current_session","total_token_bucket":"100k_150k","raw_prompts_copied":false}
139
+ {"event":"context.usage.category.attributed","category":"mcp_server","component_hash":"sha256:...","loaded_token_bucket":"10k_25k","deferred_definition_count":42,"hydrated_definition_count":3,"raw_schema_copied":false}
140
+ {"event":"context.usage.breakdown.completed","categories":["skills","subagents","plugins","mcp_server"],"audit_gap":"proves attribution buckets, not whether each component was necessary"}
141
+ ```
142
+
98
143
  ## Pruning / compaction smoke
99
144
 
100
145
  For context-cleaning, pruning, compaction, or doctor/guard tools, answer: