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.2.tar.gz (889.6 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.2-py3-none-any.whl (164.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: akashic_kb-0.1.2.tar.gz
  • Upload date:
  • Size: 889.6 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.2.tar.gz
Algorithm Hash digest
SHA256 9e0b8ebb60343e982a83b17fc8f3b92b323d14a0ad283a29f4eab509249448cb
MD5 c94d962ac13c19bfd2012198a15b9b0f
BLAKE2b-256 15ddab9a732fa0b08561d64407bec32f06a4105e098a3696a28ee25e1fd919d3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: akashic_kb-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 164.5 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 bb5511e7333306b60f880952cd78dae9a0dc21522afcc898d06b29d3d4161d92
MD5 239ff4da9f94bc022222d682e7bc7661
BLAKE2b-256 65808dc3a06ba0ad5abc7a74c525dad79d65ce116899c841415fc4a5a9ff07fe

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