ai-rulez 5.7.0 → 5.9.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.
package/README.md CHANGED
@@ -83,6 +83,7 @@ The table covers the implemented capabilities. The [CLI reference](docs/cli-refe
83
83
  | Skill search | Rank skills lexically, by vectors or with hybrid embeddings, maintain the index, evaluate ranking and mine queries from usage. | `search`, `search index/status/mine`, `search --eval` | [Search](docs/search.md) |
84
84
  | Catalog and inventory | Inspect item metadata, owners, roles, dependencies and lock status; join eval/usage results, compare catalogs and build a static catalog website. | `catalog`, `catalog diff`, `catalog --html` | [Catalog](docs/catalog.md) |
85
85
  | Token and context budgets | Report generated prompt tokens, compare profiles and roles, identify costly content and gate always-loaded or on-demand budgets. | `tokens`, `cost`, `--budget`, `--on-demand-budget` | [Token reports](docs/cli.md#tokens-command), [Cost reports](docs/cli.md#cost-command) |
86
+ | Session exposure and areas | Show what a Claude Code session loads at its start and what that costs, map repository areas to owners and terms, and flag area terms leaking into start-of-session text, overlapping skill listings and unreadable gates (`AR9W0`-`AR9W6`). | `exposure`, `exposure inventory/areas/collisions/leakage`, `[exposure]` | [Session exposure](docs/exposure.md) |
86
87
  | Usage and item-load telemetry | Opt into identifier-only skill invocation, feedback and item-load records; report usage and optionally export item-load telemetry through OTLP. | `telemetry record/report/feedback/enable/export` | [Usage telemetry](docs/usage-telemetry.md), [Item loads and OTLP](docs/telemetry.md) |
87
88
  | Shared model access | Route model calls through liter-llm, including AWS Bedrock credential refresh and OpenAI-compatible gateways, with network consent, budgets, authenticated caching and redacted diagnostics. | `[llm]`, `llm doctor`, `llm estimate` | [LLM access](docs/llm.md) |
88
89
  | Automation and embedding | Use the composite GitHub Action, pre-commit/prek, Poly or Lefthook; call the experimental Go API to load, validate, plan/apply generation and manage locks. Shell completion and JSON schemas support other integrations. | [Action](action.yml), `init --setup-hooks`, `completion`, `pkg/airulez` | [Git hooks](#git-hooks), [GitHub Actions](#github-actions), [Go API](docs/embedding.md), [Schemas](docs/schema.md) |
@@ -389,6 +390,7 @@ An organization [policy](docs/policy.md) sets tighten-only floors a repository c
389
390
  `CLAUDE.md` files that apply to each unit, nested `.claude/` directories at any depth. `ai-rulez judge --estimate`, then
390
391
  `--allow-llm` to send; `--changed=origin/main` for a pull request, `--format sarif` for code scanning. See [judge](docs/judge.md).
391
392
  - **Cost and inventory.** `tokens`, `cost`, `catalog` and `search` report what the configuration contains and costs.
393
+ - **Session exposure.** `exposure` reports what a Claude Code session loads at its start and gates it with `[exposure] start_budget`; with an `[exposure]` area map, `exposure leakage` and `exposure collisions` find area terms in start-of-session text and overlapping skill listings. See [Session exposure](docs/exposure.md).
392
394
 
393
395
  Existing project on 4.x? Run `ai-rulez migrate v5 --dry-run`, then see [Migrating to v5](docs/migration-v5.md).
394
396
 
@@ -409,7 +411,7 @@ Add to `.pre-commit-config.yaml`:
409
411
  ```yaml
410
412
  repos:
411
413
  - repo: https://github.com/Goldziher/ai-rulez
412
- rev: v5.7.0
414
+ rev: v5.9.0
413
415
  hooks:
414
416
  - id: ai-rulez-recursive # generate: write outputs for every nested .ai-rulez/ root
415
417
  - id: ai-rulez-validate # validate --recursive: content, security and link checks
@@ -440,7 +442,7 @@ repository needs:
440
442
  [[hooks.sources]]
441
443
  id = "ai-rulez"
442
444
  git = "https://github.com/Goldziher/ai-rulez.git"
443
- revision = "v5.7.0"
445
+ revision = "v5.9.0"
444
446
  hooks = ["ai-rulez-recursive", "ai-rulez-plugin-verify"]
445
447
  ```
446
448
 
@@ -493,14 +495,16 @@ the release's `checksums.txt`, caches it (keyed by OS, arch and the resolved ver
493
495
  toolchain, Node or Python needed in the job. It reuses the same `scripts/pre-commit/run-ai-rulez.sh`
494
496
  download-and-verify logic the pre-commit hooks above use, so the two stay in sync.
495
497
 
496
- Use `Goldziher/ai-rulez@v5` for compatible action updates: publishing a stable v5 release advances
497
- this floating tag after all distribution jobs succeed. Pin a full release tag or commit SHA to fix
498
- the action code. The action ref and installed CLI version are independent: set `version` as well
499
- to pin the binary; its default `latest` can eventually select a newer major release.
498
+ Use `Goldziher/ai-rulez@v5` for compatible action updates: publishing a stable v5 release moves
499
+ this annotated floating tag after all distribution jobs succeed. `uses: Goldziher/ai-rulez@v5` with
500
+ `version: latest` keeps a workflow on the newest 5.x action and the newest released CLI with no
501
+ per-release edits. Pin a full release tag or commit SHA to fix the action code. The action ref and
502
+ installed CLI version are independent: set `version` as well to pin the binary; its default
503
+ `latest` can eventually select a newer major release.
500
504
 
501
505
  | | |
502
506
  | --- | --- |
503
- | **Input** `version` | `X.Y.Z`, `vX.Y.Z`, or `latest` (default). Optional — omit it to always use the newest release. |
507
+ | **Input** `version` | `X.Y.Z`, `vX.Y.Z`, `X.Y.Z-rc.N` or `latest` (default: the newest stable GitHub release). Optional — omit it to always use the newest release. |
504
508
  | **Inputs** `llm-*` | Optional provider, model, gateway, credential variable name, network opt-in, budgets and other LLM settings exported to later steps. [Full reference](docs/github-actions.md#llm-configuration-inputs). |
505
509
  | **Output** `version` | The resolved version, without the leading `v`. |
506
510
  | **Output** `path` | Absolute path to the installed `ai-rulez` binary. |
@@ -521,7 +525,7 @@ jobs:
521
525
  - uses: actions/checkout@v7
522
526
  - uses: Goldziher/ai-rulez@v5
523
527
  with:
524
- version: 5.7.0 # pin the CLI independently of the floating action ref
528
+ version: 5.9.0 # pin the CLI independently of the floating action ref
525
529
  - run: ai-rulez generate --check # the committed output matches the sources
526
530
  - run: ai-rulez validate --strict # content and security checks, warnings fail
527
531
  - run: ai-rulez lock --check # pins were updated when the sources were
@@ -529,6 +533,15 @@ jobs:
529
533
 
530
534
  </details>
531
535
 
536
+ `uses: Goldziher/ai-rulez/check@v5` installs the CLI the same way and runs the whole governance gate per
537
+ configuration root: `migrate okf --check`, `validate --strict --no-local`, `lock --check`, `generate` then
538
+ `generate --check`, optionally `verify --plugin` and `tokens --budget`, then a clean `git diff HEAD` with no new
539
+ untracked files. `expected-config-count` fails a run that finds a different number of roots, and a job summary lists
540
+ every command. See [the check sub-action](docs/github-actions.md#governance-gate-check).
541
+ `uses: Goldziher/ai-rulez/update@v5` on a schedule runs `ai-rulez update` when `lock --outdated` reports an allowed
542
+ update, regenerates, re-pins the content and opens a pull request with the outdated table (or pushes directly with
543
+ `direct: true`). See [scheduled pin updates](docs/github-actions.md#scheduled-pin-updates-update).
544
+
532
545
  For model-backed reviews, configure `llm-model`, `llm-allow-network: 'true'` and spend limits,
533
546
  pass provider credentials through `env:` on the command step or job, and run `ai-rulez judge
534
547
  --allow-llm`. Installation itself makes no model requests. See the [action guide](docs/github-actions.md)
@@ -47,9 +47,6 @@ after it, and describe the changes on the second line.
47
47
  // See THIRD_PARTY_NOTICES.md.
48
48
  ```
49
49
 
50
- `scripts/transcode-skillspector-tests.py` writes this header for the tables it generates; the output is a fragment to
51
- merge into a file that already carries the header once.
52
-
53
50
  ## Neo23x0 signature-base
54
51
 
55
52
  SkillSpector's YARA rules state that they are based on [Neo23x0/signature-base](https://github.com/Neo23x0/signature-base),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ai-rulez",
3
- "version": "5.7.0",
3
+ "version": "5.9.0",
4
4
  "description": "Author, generate, validate and govern AI agent rules, skills, plugins and MCP configuration across 52 coding assistants. Review with verified model evidence, evaluate skills, lock and sign dependencies, and publish bundles. CLI, MCP server and Go API.",
5
5
  "keywords": [
6
6
  "agent-plugins",