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.3.tar.gz (890.8 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.3-py3-none-any.whl (165.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: akashic_kb-0.1.3.tar.gz
  • Upload date:
  • Size: 890.8 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.3.tar.gz
Algorithm Hash digest
SHA256 104f8f01d7e4c5e9c6a52f76a536e6f6c4157e254bb420c3f3559b2c6ef41211
MD5 61b3abe6a7b35e0b8868a296ccb1803a
BLAKE2b-256 9803d38bab1f2f80cf0df7946c0332823408c537495514de5cafac2530ec3e97

See more details on using hashes here.

File details

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

File metadata

  • Download URL: akashic_kb-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 165.8 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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 d6bd77f8c5eb7a4393a36dd82bb5d4f362ce2f09e18aee324b0773e448fb8f6d
MD5 a1b5e88aac9b9053b1b81654cff53963
BLAKE2b-256 a1dbc2165c5a924b4291ec289674fafa814020b7e21321ac55a1fdc07f755719

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