Skip to content

Getting Started

Install, choose what to run, start your first session, and see where what coding learns is kept — about five minutes for the harness tier, a little longer with Docker.

Four commands

git clone --recurse-submodules https://github.com/fwornle/coding ~/Agentic/coding
cd ~/Agentic/coding && ./install.sh
source ~/.zshrc          # or ~/.bashrc
cd ~/my-project && coding

Two questions

The installer asks whether bare agents should be observed too (Enter = no, only sessions started via coding), and which tier to install:

Which tier

harness needs no Docker. learning and up add session logging, online learning and the knowledge viewer, and need Docker running. Change it any time with coding-features profile <tier> or in the dashboard. Details: Installation.

The first launch in a repo

With a learning tier, the first coding in a repo asks once where its learned data goes — Enter creates a private <repo>-history, a teammate's URL shares theirs, skip keeps it local. See Per-Repo Tenancy.

Check it worked

The status line under the agent shows [🏥●] green when the system is healthy. For the full picture open the dashboard at localhost:3032.

Then: Configuration for LLM provider keys, or Verify & Repair if something is not green.

What you need

Tool For
Node.js 22 LTS+ the launcher and every host service (18 and 20 are EOL)
Git the repo, its submodules, and your learning repos
jq, tmux the scripts, and the session wrapper with the shared status bar
Docker (running) learning tiers and up only — the knowledge services are containers
gh, logged in to bmw.ghe.com optional: lets the first launch in a repo create its private <repo>-history for you

macOS, Linux, and Windows through WSL (with systemd enabled) are supported.

Installing

git clone --recurse-submodules https://github.com/fwornle/coding ~/Agentic/coding
cd ~/Agentic/coding && ./install.sh
source ~/.zshrc

The installer first lists everything it would touch (./install.sh --dry-run stops there), then asks two questions — agent scope and tier — and installs only what that tier needs:

Tier Adds Docker
harness agent launcher, status line, health monitoring, LLM proxy + token measurement no
learning session logging, observations → digests → insights, UKB batch learning, knowledge viewer yes
learning-perf performance measurement yes
everything constraints (guardrails) + code graph yes

Unattended: ./install.sh --yes --features=learning. The full walkthrough with every prompt is on Installation.

Your first session

cd ~/my-project
coding                  # the best available agent
coding --claude         # or pick one: --copilot, --opencode, --pi
coding --project DIR    # start in another directory

The agent opens inside a tmux session with the shared status bar along the bottom:

Agent launched by coding

Launching the agent's own CLI directly skips session logging, knowledge injection and health monitoring — prefer coding.

Where what it learns goes

Everything learned in a repo is kept in that repo's .coding/ folder — session logs, observations, insights, knowledge-graph slice, token usage. On the first launch you decide whether that folder is a private <repo>-history repo (shareable with teammates through git), or local only. Commits happen automatically; pushing is always your call:

coding sync              # what each learning repo has to push / pull
coding sync --push       # asks, then pushes

Group repos into teams in Dashboard → Teams; the knowledge viewer follows that selection. See Per-Repo Tenancy and Teams & Shared Learning.

Checking health

The status line's [🏥●] is the summary. The dashboard at localhost:3032 shows each database, service and process, and Run Verification re-checks everything on demand:

Health dashboard

From a shell:

coding-features status                 # which features are on, and why any are off
curl -s localhost:3034/health          # the health coordinator

Verify & Repair works through each service when something is red.

How the pieces fit

Agent launched by coding

coding is a launcher. It resolves which features are on (~/.coding/features.yaml, written by the installer), starts or reuses what those features need, prepares the repo's learning checkout, and opens the agent CLI inside a tmux session carrying the shared status bar.

Runs on the host Runs in Docker (learning tiers and up)
the launcher, the agent CLI coding-services — semantic analysis (UKB), constraint monitor, code graph, dashboard
health coordinator :3034, LLM proxy :12435, obs-api :12436 Qdrant (vectors), Redis
session loggers, sub-agent capture, sweepers (launchd / systemd user units)

With only harness features on, the launcher never starts Docker.

Docker Architecture


Prerequisites

Tool Required Purpose
Node.js 22 LTS+ yes the launcher and every host service (18/20 are EOL)
Git yes the repo, submodules, learning repos
jq yes JSON processing in scripts
tmux yes session wrapping and the status bar
Docker learning and up container runtime (Docker Desktop or Engine), running
gh optional creates private <repo>-history repos on first launch
brew install git node jq tmux gh
brew install --cask docker        # learning tiers only
sudo apt update && sudo apt install -y git nodejs npm jq tmux gh
curl -fsSL https://get.docker.com | sh   # learning tiers only

Host services run as systemd user units; loginctl enable-linger $USER keeps them running after logout.

Install inside a WSL2 distribution with systemd enabled (/etc/wsl.conf: [boot] systemd=true), then as on Linux. Docker Desktop's WSL integration provides Docker for the learning tiers. There is no native Windows installer.


Install

git clone --recurse-submodules https://github.com/fwornle/coding ~/Agentic/coding
cd ~/Agentic/coding
./install.sh            # asks: agent scope, tier
source ~/.zshrc         # or ~/.bashrc

Which tier

Flag Effect
--dry-run print the impact manifest and stop — nothing changes
--features=<tier> choose the tier without asking (harness, learning, learning-perf, everything, or a feature list)
--yes unattended; take the defaults
--global-agents also observe bare claude / copilot / opencode (writes their global configs)

Everything is reversible with ./uninstall.sh. The full flow, with every prompt, is on Installation.


What each tier installs

Feature harness learning learning-perf everything
launcher, status line, health monitoring ✓ ✓ ✓ ✓
LLM proxy + token measurement ✓ ✓ ✓ ✓
live session logging (LSL) ✓ ✓ ✓
observations → digests → insights, UKB, knowledge viewer ✓ ✓ ✓
performance measurement, experiments, kgbench ✓ ✓
constraints, code graph ✓

Switch later with coding-features profile <tier>, one feature with coding-features set <feature> on|off, or in Dashboard → Features.


Verification

Health dashboard

  • Status line — [🏥●] green = healthy; each other badge belongs to one feature and is absent when that feature is off.
  • Dashboard — localhost:3032, Run Verification for an on-demand pass.
  • Shell — coding-features status, curl -s localhost:3034/health.

Full Verification Guide


First usage

Start a session

cd ~/my-project
coding                     # best available agent
coding --claude            # or --copilot, --opencode, --pi
coding --project DIR       # another directory
coding --dry-run           # resolve everything, launch nothing

The learning repo

With a learning tier, the first launch in a repo asks where its learned data goes:

First launch in a repo

Enter creates a private <repo>-history (via gh), a teammate's URL clones and shares theirs, skip keeps the data local and untracked. Never asked again for that repo. See Per-Repo Tenancy.

Look at what was learned

Update the knowledge base

Within a session, ask for it in chat:

"ukb"         # incremental analysis (recent changes)
"ukb full"    # the entire history
"ukb debug"   # single-stepping

Or from a shell: semantic workflow run wave-analysis --team coding. It runs in the background for 10–20 minutes; follow it on the dashboard.

Share with your team

coding sync               # what each learning repo has to push / pull
coding sync --push        # asks, then pushes

Teams & Shared Learning


Next steps

  • Configuration


    Set up API keys for LLM providers

    Configure

  • Verify & Repair


    Troubleshoot installation issues

    Verify

  • Per-Repo Tenancy


    Where learned data lives and how teams share it

    Read