Push to publish.

Shared context for teams and agents.

Stele turns a GitHub repository into a private, navigable site at <slug>.stele.axelerant.tech. The same source your team reviews in PRs is the source your AI agents read from — no parallel content store, no agent-specific format, every change a Git operation. Ask a question on any page and get an answer with the pages it came from.

See how it works ↓

Read the docs →

Zero config for the common case · Sync within 60 seconds of push*

* assuming no custom build step — build commands add the time their tools take.

axelerant-context.stele.axelerant.tech
live
docs / overview.md
Axelerant Context — Overview

Architecture notes, decision records, and shared conventions the team and our AI agents read from when shaping new work.

Pages
42
Diagrams
9
Synced
✓
↻ updated 4 minutes ago from a1b3c7d
How it works · four moves to live

Four moves from repo to readable site.

One repository, four moves — onboard it, author in it, push it, share it. Watch the sequence run, or pick a step to hold it there.

Shared context · ordinary Git

The same repo. Read by your team, and by your agents.

Decisions, diagrams, runbooks, prototypes — keep them next to the code in the workflow you already know. People review them in PRs. Agents author with the skill and read them through the site or Ask. There is no parallel content store and no magic step in between — branch, commit, push, and the site updates.

$
git commit -m "docs: add C4 diagrams"
git push origin main
# 47s later — live at
axelerant-context.stele.axelerant.tech
Give your agent the skill

The stele-resources skill teaches a coding agent where artifacts go, the .stele.yml reference, formats, build steps, and the ask: block.

npx skills add https://stele.axelerant.tech/skills/stele-resources.tgz
How to install it →
What renders · markdown, HTML, React, diagrams

Three formats — and the tools that build them.

Drop a file in the tree, push, and Stele picks the right renderer. For artifacts that need a build step — architecture diagrams, generated reports — Stele ships the tools and runs them at sync time. No static-site-generator config of your own.

Extension
.md

Markdown

GitHub-flavoured Markdown with syntax highlighting, tables, task lists, and Mermaid diagrams. Rendered on demand.

Extension
.html

HTML

Served as authored inside an isolated iframe. Sibling assets — images, CSS, JS — resolve via relative links.

Extension
.tsx / .jsx

React

Standalone components with a fixed runtime — React 19, Tailwind, lucide-react, recharts, d3, lodash, mathjs, papaparse.

Opt in via .stele.yml
LikeC4 · D2

Diagrams

The worker image bundles the LikeC4 and D2 CLIs. Wire them up by adding a build: entry to .stele.yml — Stele runs the CLI at sync time and serves the output. Mermaid diagrams inside Markdown remain automatic.

Bring your own — any build command works once configured. .stele.yml defines what to run and which directory to serve, so Storybook, Vite, MkDocs, or a shell pipeline all land as a published site without a custom integration.
Ask · answers with citations

Ask the documents. Get the page, not a guess.

Every page of a site carries a panel that answers questions about the repository behind it. The assistant lists, searches and reads the documents you declared, then writes an answer with a link to each page it drew from — so the reader can check it, and the next person can fix the document instead of asking again.

Grounded in the repo
Answers come only from the documents in the repository the manifest declares. There is no second content store and nothing else in scope.
Every claim links out
Every answer links to the page it came from, and the assistant can only cite pages the site actually serves — never a URL it invented.
Switched on per site
The site owner turns Ask on for a site in the portal and chooses the provider and model there. It is internal by default.
Read the Ask guide →
axelerant-context.stele.axelerant.tech/docs/decisions
Context Docs

Which diagram shows the sync flow, and why did we pick Postgres for the queue?

The sync flow is the Flow diagram, built from diagrams/flow.d2. The decisions log says the queue runs on Postgres with SELECT … FOR UPDATE SKIP LOCKED — one less broker to run.

docs/decisions#queuediagrams/flow

Conversations are kept for 90 days and readable by the team.

Features · publish · navigate · ask · govern

Built for the artifacts that live next to code.

Publish

Zero-config rendering

Sensible defaults for landings, indexing, and navigation, derived from your repo. Override with a manifest only when defaults aren't enough.

Guide →

Auto-sync on push

A GitHub webhook drops a job onto a Postgres-backed queue. Sites update within a minute of the push landing.

Guide →

Build steps and a fixed runtime

LikeC4, D2, and Graphviz are pre-installed for build steps at sync time, and any command is allowed. TSX and JSX render on one centrally-managed React runtime that sites cannot repin.

Guide →
Navigate

Landing-page resolution

index.html, then index.md, then README.md, then a manifest override. A bare README is already a working home page.

Guide →

Sidebar and file browser

A navigator sidebar generated from your file tree, or curated explicitly with nav: in .stele.yml. A file browser at /_browse gives readers the full directory tree.

Guide →

Relative links that just work

Markdown links between files, including anchors, are rewritten to the rendered URL automatically. Nothing to maintain by hand.

Guide →
Ask

Ask, with citations

A chat panel on every page answers from the repository's own documents. Every citation is a page the site actually serves — never an invented link.

Guide →

Logged in the portal

Every question, its tool trace, and its token usage are recorded in the portal. The owner assigns the provider and model per site, and the audience defaults to signed-in staff.

Guide →

See what the assistant can read

The portal's corpus list shows every file the assistant may read, its size and token estimate, and the URL it would be cited as, with a show-text link to the exact text. Anything you would not want quoted goes into ask.exclude.

Guide →
Share and govern

Per-directory manifests

.stele.yml at any level restricts indexing, sets a landing page, or declares a build step. A parent's rules always win over a child's.

Guide →

Share tokens with rotation

One HMAC-signed token per site for guests without SSO. Revoke by rotating — old links stop working immediately.

Guide →

Analytics and stable URLs

Per-site analytics on views, status codes, and referrers. Slug-based subdomains, derived from the repo name, stay predictable and bookmarkable.

Guide →

The agent skill

Install stele-resources once and a coding agent already knows the conventions — folder layout, the manifest, formats, build steps — before it touches your repo.

Guide →
Configuration · .stele.yml

Add configuration when defaults aren't enough.

Override the slug, switch the tracked branch, restrict indexing to specific directories, curate the sidebar, run a build step at sync time, or add an assistant that answers from the documents — all from a single YAML file at the repo root.

Read the configuration reference →
.stele.yml
slug: axelerant-context
branch: develop

roots:
  - docs/
  - diagrams/

landing: docs/overview.md

nav:
  - title: Overview
    path: docs/overview.md
  - title: Diagrams
    path: diagrams/

build:
  command: npx likec4 build . --output-single-file
  output: dist/

ask:
  name: Context Docs
  audience: internal

One commit away.

Sign in, pick a repo, confirm the slug. Your site is live before the next coffee.

Read the docs