Skip to content

Releases

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 14 Nov 10:03
6c47f2d

Adds mounts: one project router can now list, load and check a second, independently maintained router tree that lives inside the project.

Add the field to the outer config, keeping its existing topics:

"mounts": {
  "kb": { "root": "modules/kb-core" }
}
python3 scripts/ai-context.py list
python3 scripts/ai-context.py guide kb/guide
python3 scripts/ai-context.py check
  • list shows local topics plus <mount>/<topic> names, each with its origin. A local guide and a mounted kb/guide can coexist.
  • check applies each root's own instructions, byte budgets, discovery and orphan, history, indexed and link rules. The outer scan leaves a mounted tree to its owner; explicitly routed outer sources are still checked.
  • The mounted config defaults to wiki/ai-context.json inside that root. Add "config": "context/router.json" to select another file there.
  • A request for several topics prints nothing unless every one of them renders, so a failure cannot leave a partial result on stdout.

A mounted root must be inside the project after symlinks are resolved. It cannot contain the outer wiki, history directory, config or root instructions, and one mount root cannot contain another. A mounted config cannot declare mounts of its own. The router only reads files that are already present; it does not fetch modules or run their scripts.

A missing mount root is a one-line NOTICE in list, with status 0; check and requests for that mount fail. Other mount errors fail with a diagnostic naming the mount while list and check continue through the healthy roots.

Without mounts, or with "mounts": {}, successful list, check and topic output is the same as 0.2.1. Two failure cases now report a clean error instead of a traceback: a missing root instructions file in check, and a topic source that is a directory.

To update an existing routed repository, compare local customizations before replacing its copied scripts/ai-context.py. Updating the installed skill does not replace copied routers, and mounts needs the 0.3.0 script. Preserve the repository's config and documentation, then run python3 scripts/ai-context.py --version and check.

For a pinned Pi installation:

pi install git:github.com/runkids/agents-context-router@v0.3.0

Known limitation: check does more path resolution than before. On a tree of 4,000 Markdown files without mounts it took 0.65 s, up from 0.44 s on 0.2.1. list and topic loading are unaffected.

Validation: the 106-test suite passed locally and in CI on Linux (Python 3.8 and 3.13), macOS and Windows; a few filesystem-specific cases skip on platforms that cannot exercise them. Antigravity and Claude Code manifest validation passed locally. Pi skill discovery and the model-based evals were not run for this release.

Thanks to @salmonumbrella for #14, which closes #13.

v0.2.1

Choose a tag to compare

@github-actions github-actions released this 29 Oct 14:25
4454e7c

Fixes check missing broken links inside nested lists, block quotes and tab-indented containers.

Before this release, check could treat a live paragraph as indented code and skip its links. This happened after a line dedented out of a nested list item, around a block quote inside a list item, after a lazy continuation line, or when tabs appeared among leading > and list markers. The router now tracks each open list item and the quote depth it belongs to, and reads tabs in leading container markers by their tab stops. For example, this broken link is now reported:

- Outer
  - Inner

  Outer continuation

    [broken](missing.md)

A reference definition with an empty destination ([d]:) is no longer treated as a definition, which matches CommonMark.

These changes only affect which lines check treats as code, raw HTML or definitions. Topic loading, byte budgets and config are unchanged. Because fewer links are skipped, check may now report broken links that 0.2.0 missed.

To update an existing routed repository, compare local customizations before replacing its copied scripts/ai-context.py. Updating the installed skill does not replace copied routers. Preserve the repository's config and documentation, then run python3 scripts/ai-context.py --version and check.

For a pinned Pi installation:

pi install git:github.com/runkids/agents-context-router@v0.2.1

Known limitation: a lazy continuation line directly after a reference definition inside a quoted list item can still be skipped.

Validation: 61 tests passed locally and in CI on Linux (Python 3.8 and 3.13), macOS and Windows. Link detection was also compared with two CommonMark parsers on random documents. Antigravity and Claude Code manifest validation passed locally.

Fixes #10 via #11.

v0.2.0

Choose a tag to compare

@github-actions github-actions released this 29 Oct 09:22

Adds control over bulky directory scans and avoids traversing trees that indexed patterns cannot match.

Use "skipDirs": ["projects/*/artifacts"] in the router config to exclude generated output or evidence directories. Entries accept exact repo-relative directory paths and case-sensitive fnmatch globs; * crosses /. The default is an empty list.

Wiki checks remain enabled, including when a skipped ancestor must be traversed to reach a nested wiki. Other files in that skipped ancestor remain excluded. Explicitly routed sources are still read and link-checked.

Indexed checks now prune unrelated hidden, dependency and build trees using each pattern's literal prefix, while preserving matching rules. All five README languages and the bundled manual document the new configuration.

To update an existing routed repository, compare local customizations before replacing its copied scripts/ai-context.py. Updating the installed skill does not replace copied routers. Preserve the repository's config and documentation, then run python3 scripts/ai-context.py --version and check.

For a pinned Pi installation:

pi install git:github.com/runkids/agents-context-router@v0.2.0

The v0.2.0 tag was finalized before publication to include the nested-wiki fix. If you fetched this tag before the release was published, refresh it or reinstall to get the final source.

Validation: 57 tests passed locally and in CI on Linux (Python 3.8 and 3.13), macOS and Windows. Pi skill discovery and Antigravity manifest validation also passed locally.

Thanks to @salmonumbrella for #7 and #8.

v0.1.1

Choose a tag to compare

@github-actions github-actions released this 29 Oct 07:37
340dcec

Fixes repository discovery when running the router through a symlink on PATH.

A link such as ~/.local/bin/ai-context pointing to /work/repo/scripts/ai-context.py now finds /work/repo when the link is outside scripts/, its own root has no wiki/ai-context.json, and no explicit config override is set. Previously, this failed with a missing-config error.

Explicit environment overrides, copied scripts, links inside scripts/, and links with their own root config retain their existing behavior. All five README languages and the bundled manual describe the rule.

To use the fix, update the skill and compare local customizations before replacing an existing copied scripts/ai-context.py. Updating the skill does not replace scripts already copied into other repositories. Check the copied script with python3 scripts/ai-context.py --version.

For a pinned Pi installation:

pi install git:github.com/runkids/agents-context-router@v0.1.1

Validation: 51 tests passed; Linux (Python 3.8 and 3.13), macOS and Windows CI passed for the release commit. Pi skill discovery and Antigravity manifest validation also passed locally.

Thanks to @salmonumbrella for the fix, regression tests and documentation in #5.

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 29 Oct 07:10
b26b5a7

The first tagged release of agents-context-router helps coding agents turn long AGENTS.md and CLAUDE.md files into a small shared kernel and task-specific wiki topics.

What you can do

  • Load a whole document or one exact heading with the dependency-free Python router, keeping unrelated reference material out of each task.
  • Run check to catch oversized topics, missing or ambiguous headings, unlisted topics, orphaned wiki/history pages, and broken relative Markdown file links.
  • Use one shared router across repositories with AI_CONTEXT_ROOT and AI_CONTEXT_CONFIG, allow deliberate routing exceptions with unrouted globs, and opt into discovery checks for pages outside the wiki with indexed patterns.
  • Identify the source release of a copied router with python3 scripts/ai-context.py --version. The package, native manifests, public skill and bundled router now share one version.

Install

For Pi, pin this release with:

pi install git:github.com/runkids/agents-context-router@v0.1.0

See the installation guide for Claude Code, Codex, Antigravity, Skillshare, Hermes, Kimi Code, Muse and other skill-compatible agents.

Then ask your agent: “Our AGENTS.md is too big. Split it into a small kernel and task-specific wiki topics.”

The generated router requires Python 3.8 or later. Updating the installed skill does not replace router scripts already copied into your projects; compare local customizations before updating those copies.

Verification and thanks

All 45 tests passed in CI on Linux, macOS and Windows, with Python 3.8 also checked on Linux. Pi skill discovery and Antigravity manifest validation were verified locally.

Thanks to @salmonumbrella for the shared-router setup, indexed-page checks and relative-link validation in #1, #2 and #3.