Skip to main content

Project Schwi (シュヴィ)

A small interactive CLI playground built with Prompt Toolkit and Rich.

Features

  • Slash-command interface (e.g., /help, /echo)
  • Rich UI panels and tables
  • Persistent config with schema versioning
  • Package-based version display
  • JSONL session logging per project

Requirements

  • Python 3.12+
  • uv (recommended) or another Python environment manager

Install

Using uv (recommended)

uv sync

Editable install (optional)

uv pip install -e .

Run

Local development

uv run schwi
# or
make dev

Resume a session

schwi resume <session_id>
# or
schwi --resume <session_id>

Execute once

schwi exec "/help"
schwi exec "hello"

Build

uv build
# or
make build

Commands

  • /help - Show command list
  • /exit - Exit the application
  • /quit - Alias for /exit
  • /clear - Clear the screen
  • /time - Show current local time
  • /sysinfo - Show system information
  • /echo <message> - Echo a message
  • /say <message> - Render a chat message panel
  • /commands [--pretty] - Output command metadata as JSON
  • /session - Show current session information
  • /sessions - List sessions for the current project
  • /resume <session_id> - Resume a previous session

Shortcuts

  • Tab (with empty input) - Toggle thinking mode

Configuration

On first run, the app creates a config file at:

~/.config/schwi/config.json

The config uses a schema version for safe upgrades. Example:

{
  "schema_version": 1,
  "last_seen_app_version": "0.1.0"
}

Sessions

Each run creates a JSONL session file scoped to the current project. Sessions are stored under:

~/.config/schwi/sessions/<project_id>/<session_id>.jsonl

Use /session to view the active session ID, /sessions to list sessions for the current project, and /resume <session_id> to continue a past session.

Versioning

The displayed version is resolved from the installed package metadata. If the package metadata is unavailable, the version falls back to 0.0.0.

Lint

uv run ruff check src

Tests

No tests are defined yet.

License

TBD.

Metadata

Release files for schwi 0.1.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 schwi 0.1.0
File Size Uploaded
schwi-0.1.0.tar.gz 18.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for schwi 0.1.0
File Interpreter ABI Platform
schwi-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 44.1 kB

Release files / schwi-0.1.0.tar.gz

Download URL schwi-0.1.0.tar.gz
Size 18.8 kB
Tags Source
SHA-256 checksum
How to use checksums
9a79a9d91bbf487846e5b89f27dd41bc288d42a5a163d825b6272476c30d9c2a
BLAKE2b-256 checksum
How to use checksums
87262a6a0f0aecd362c877da9cacb277286c1dfd8344e5825bb0b9797469c923
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.15 {"installer":{"name":"uv","version":"0.9.15","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / schwi-0.1.0-py3-none-any.whl

Download URL schwi-0.1.0-py3-none-any.whl
Size 25.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fc8edd4e64bccc7caec394079b52670ef6492657f0f06308c6f3fc7bfa124b4e
BLAKE2b-256 checksum
How to use checksums
82ef304d4b2c7d8618b10944d6461787391c92371fcf361bc05e70a2b0ac5a09
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.15 {"installer":{"name":"uv","version":"0.9.15","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

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