Skip to main content

CLI for Git-backed knowledge repositories.

Project description

Akashic

Akashic is a local-first CLI for Git-backed knowledge repositories. It helps teams keep structured Markdown documentation beside real source repositories, then browse that documentation through a local web UI.

Akashic does not analyze code by itself. It manages the knowledge repo, discovers attached source repos, builds generation prompts, and hands those prompts to an agent provider such as Codex or Claude.

Features

  • Initialize a Git-backed knowledge repository.
  • Attach one or more local Git source repositories.
  • Generate structured docs for services, flows, system notes, ADRs, entities, and glossary entries.
  • Preserve hand-written content through <!-- HUMAN:START --> sections.
  • Serve docs through a local React/Vite site.
  • Build a static read-only docs site.
  • Validate setup with doctor and inspect repo state with status.

Installation

Akashic is a Python package targeting Python 3.10+.

Install the released CLI:

uv tool install akashic-kb
# or
pipx install akashic-kb

The installed command is still akashic:

akashic --version

For local development:

uv sync
uv run akashic --version

If installing from a checkout:

pip install .
akashic --version

The documentation site commands also require Node.js and npm.

Quickstart

Create a knowledge repository:

mkdir knowledge
cd knowledge
akashic init

Attach source repositories:

akashic attach /path/to/source-repo
akashic attach /path/to/another-repo --name billing
akashic list

Generate docs:

akashic generate

Review changes, then commit them yourself:

git status
git add -A
git commit -m "Generate knowledge docs"

Browse docs locally:

akashic serve

Build a static site:

akashic build-site

Commands

Command Purpose
akashic init [PATH] Initialize a knowledge repo.
akashic root Print discovered knowledge repo root.
akashic attach [PATH] [--name NAME] Register a source Git repo.
akashic detach NAME Remove an attached source repo.
akashic list List attached source repos.
akashic generate Compose prompts and run configured provider.
akashic serve Start local docs site.
akashic build-site Build static docs site.
akashic doctor Validate config, Git, repos, provider, and runtime.
akashic status Show attached repos, generation state, and doc counts.

Global options:

  • --version: print package version.
  • --knowledge <dir>: use a specific knowledge repo instead of discovering one.

Configuration

Akashic stores shared repo configuration in .akashic/config.yaml and machine-local absolute paths in .akashic/config.local.yaml. The local config is gitignored so the knowledge repo can be shared across machines.

Workspace discovery order:

  1. --knowledge <dir>
  2. AKASHIC_HOME
  3. Parent directory walk from the current working directory

Documentation

Full docs live in docs/README.md:

Development

Run tests:

uv run pytest

Run focused CLI commands from the checkout:

uv run akashic doctor --knowledge /path/to/knowledge

Frontend sources live under frontend/ and are packaged into the Python wheel.

Current status

The built-in fake provider writes files and is useful for exercising the full pipeline. Real providers (codex, claude) are documented in docs/generation.md, including current execution behavior and limitations.

License

MIT. See LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

akashic_kb-0.1.0.tar.gz (136.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

akashic_kb-0.1.0-py3-none-any.whl (148.1 kB view details)

Uploaded Python 3

File details

Details for the file akashic_kb-0.1.0.tar.gz.

File metadata

  • Download URL: akashic_kb-0.1.0.tar.gz
  • Upload date:
  • Size: 136.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for akashic_kb-0.1.0.tar.gz
Algorithm Hash digest
SHA256 5e92f8129a0f29914139adf4312d3517c5d538c69aeadd43fa486024b1d97a20
MD5 dbf948327c85fce16e9b83e23bb031c0
BLAKE2b-256 42bb497d9c71f4d2b4cdc6d32c9d99b2e7a752d045c778d90109dd90296a30b9

See more details on using hashes here.

File details

Details for the file akashic_kb-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: akashic_kb-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 148.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for akashic_kb-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f30f26bc95206954f43c332f6ef6963527c877020d6acace2603b02dc5385980
MD5 632033fb2d9a4b6fbbd700ed85997977
BLAKE2b-256 7c08640c060e6d61da52901dcc13610fe44e10a1eb2c8f07946ba5734d9a59d4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page