Skip to main content

Themis CLI

A CLI tool to manage the full lifecycle of AI-assisted development projects.

Themis solves context loss between Claude Code sessions by generating structured project scaffolding with CLAUDE.md, BACKLOG.md, decisions/, and a whitepaper — keeping all context, decisions, and documentation in one place.

Why Themis?

When working with Claude Code, valuable research and architectural decisions get lost in chat history between sessions. Themis gives every idea and project a structured home where context is preserved and travels with the code.

Installation

Requires Python 3.12+ and uv.

uv tool install themis-cli

Verify:

themis --version

Configuration

Workspace path

By default Themis uses ~/themis-workspace/. Override via:

themis config set workspace /path/to/your/workspace

Configuration is stored in ~/.config/themis/config.json.

Developer profile

Themis injects your developer profile into every generated CLAUDE.md so Claude Code always knows who you are and how you work.

themis setup

This creates ~/.config/themis/profile.md. Edit it to describe your stack, principles, and working preferences.

Workspace Structure

~/themis-workspace/
├── inbox/              # Ideas under exploration
│   └── my-idea/
│       ├── CLAUDE.md
│       ├── EXPLORATIONS_LOG.md
│       └── decisions/
└── projects/           # Active projects
    └── lib-py-myproject/
        ├── CLAUDE.md
        ├── CONTEXT.md
        ├── BACKLOG.md
        ├── WHITEPAPER.md
        ├── .gitignore
        └── decisions/
            └── DECISION-MODEL.md

Commands

themis init-idea <name>

Creates a new idea in inbox/ with a structured CLAUDE.md, EXPLORATIONS_LOG.md, and decisions/ folder. Injects your developer profile and prints the correct agora launch command.

themis init-idea my-saas-idea

themis init-project <name> [stack]

Creates a fully initialized project with native tooling, CLAUDE.md, BACKLOG.md, WHITEPAPER.md, .gitignore, and a first Git commit. Prompts for project type to build the correct repository name.

Supported stacks: python, angular, nextjs, node, nestjs

Project types: src, lib, util, msvc, proj

The project directory is named following the convention: <type>-<lang>-<name> (e.g. lib-py-myproject, src-ts-myapp).

themis init-project myproject python
# or let Themis prompt you
themis init-project myproject

themis promote <name> [stack]

Promotes an idea from inbox/ to a full project. Migrates research context and decisions, prompts for whitepaper content, and removes the idea from inbox/ after migration.

themis promote my-saas-idea python

themis list

Lists all ideas and projects in your workspace. For each project shows the current In Progress items from BACKLOG.md and the Next step from the last session in CLAUDE.md.

themis list
          Themis Workspace
┌─────────────┬──────────────────┬──────────────┬───────────────┐
│ Type        │ Name             │ In Progress  │ Next          │
├─────────────┼──────────────────┼──────────────┼───────────────┤
│ 💡 idea     │ my-saas-idea     │              │               │
│ 🚀 project  │ lib-py-myproject │ • Fix auth   │ Add dashboard │
└─────────────┴──────────────────┴──────────────┴───────────────┘

themis status

Quick consolidated view of all active projects showing current In Progress items and next steps — without listing ideas.

themis status
              Project Status
┌──────────────────┬──────────────┬───────────────┐
│ Project          │ In Progress  │ Next          │
├──────────────────┼──────────────┼───────────────┤
│ lib-py-myproject │ • Fix auth   │ Add dashboard │
└──────────────────┴──────────────┴───────────────┘

themis session start <project>

Launches Claude Code for a project with the correct CLAUDE_MEM_DATA_DIR set automatically. Accepts the full project name or just the short name.

themis session start myproject
# or
themis session start lib-py-myproject
  ⬡ THEMIS SESSION START

  Proyecto : lib-py-myproject
  Memoria  : /home/user/.claude-mem/lib-py-myproject

themis config

Manage Themis configuration (workspace path).

themis config show
themis config set workspace ~/projects/ai-workspace

themis setup

Interactive setup: creates ~/.config/themis/profile.md with your developer profile content.

themis setup

Typical Workflow

1. Got an idea?
   themis init-idea my-idea
   cd ~/themis-workspace/inbox/my-idea && agora

2. Research and explore with Claude.
   Document decisions in decisions/

3. Ready to build?
   themis promote my-idea python

4. Open your project.
   themis session start my-idea

5. Track progress.
   themis status

Requirements

  • Python 3.12+
  • uv — for Python projects
  • pnpm — for nextjs and node projects
  • Angular CLI — for angular projects
  • Claude Code — for themis session start

License

MIT

Metadata

Release files for themis-cli 0.4.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for themis-cli 0.4.1
File Size Uploaded Provenance Actions
themis_cli-0.4.1.tar.gz 46.2 kB Without provenance Details for themis_cli-0.4.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for themis-cli 0.4.1
File Interpreter ABI Platform Actions
themis_cli-0.4.1-py3-none-any.whl Python 3 none any Details for themis_cli-0.4.1-py3-none-any.whl

Total release size: 67.1 kB

Release files / themis_cli-0.4.1.tar.gz

Download URL themis_cli-0.4.1.tar.gz
Size 46.2 kB
Tags Source
SHA-256 checksum
How to use checksums
3bd3ec0dbed5fdf9d16014fc80cb7d8c2a89e2cb3003ca6f461788443cd4722b
BLAKE2b-256 checksum
How to use checksums
52d26cc01e3fae259b4901b2c612743487209a16b543a00b9a4a0d61948e8165
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / themis_cli-0.4.1-py3-none-any.whl

Download URL themis_cli-0.4.1-py3-none-any.whl
Size 20.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3cb49e5b3914fad78ccdef7a70b03f29213b8b94846c5d034a8df99d066916db
BLAKE2b-256 checksum
How to use checksums
3a0edf38901630910aadde7faf7b29e3fc86f4f147544be7ee70e10976a4ac4d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for themis-cli 0.4.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page