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.0

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.0
File Size Uploaded Provenance Actions
themis_cli-0.4.0.tar.gz 44.3 kB Without provenance Details for themis_cli-0.4.0.tar.gz

Built distribution (wheel)

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

Total release size: 64.8 kB

Release files / themis_cli-0.4.0.tar.gz

Download URL themis_cli-0.4.0.tar.gz
Size 44.3 kB
Tags Source
SHA-256 checksum
How to use checksums
75608a9a25ab0907ec6721440df8141c367aefc5d31a3115397db57f499f2682
BLAKE2b-256 checksum
How to use checksums
e1464a95edefd0cec68d4d30c180f54924edf0cc4c4cbbf534c80aa89b587821
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.0-py3-none-any.whl

Download URL themis_cli-0.4.0-py3-none-any.whl
Size 20.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6063e6d802704634bbb7812062722330a2caf0d03adc7bb44c2e8bca71001ef8
BLAKE2b-256 checksum
How to use checksums
3a8b3f33c3e212cbab649a19548cbdd6bc358fc3868886c3f87ae75016fdb488
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.0

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