Skip to main content

Deepy - Vibe coding for DeepSeek models in your terminal

Project description

Deepy logo

Deepy

A cute terminal coding agent for DeepSeek models.
Read, edit, run tools, search the web, and keep project context in one terminal session.

Website · 中文文档 · Quick Start

Deepy welcome screen

What Is Deepy?

Deepy is a Python terminal coding agent built for DeepSeek's OpenAI-compatible models. It keeps the workflow inside your terminal: ask questions, inspect a project, edit files, run commands, search or fetch web content, and resume the same project session later.

Deepy is designed around DeepSeek V4 thinking mode, long context, cache-friendly prompting, and a Rich terminal interface that makes tool calls, diffs, usage, and context state visible while the agent works.

Highlights

  • DeepSeek-first model setup with deepseek-v4-pro, thinking enabled, and reasoning_effort=max by default.
  • OpenAI Agents SDK integration through OpenAIChatCompletionsModel.
  • Project-aware coding tools for reading files, modifying files, running shell commands, and showing readable diffs.
  • Web research tools for search and direct URL fetching when a task needs fresh information.
  • Session history, /resume, /new, automatic context tracking, and compacting for long project work.
  • TOML-only private configuration at ~/.deepy/config.toml.
  • Terminal UI with Markdown rendering, DeepSeek thinking display, per-turn usage, context window status, and version update checks.

See It Work

Start In A Project

Deepy shows the current model, thinking settings, working directory, and the core commands directly on startup.

Deepy startup screen

Build And Verify Code

Ask Deepy to implement a change, write tests, run the project test command, and summarize the result.

Deepy coding workflow with diff

Deepy can also turn command output into a readable project summary, including files created, code snippets, and test coverage.

Deepy project summary

Research With Sources

Deepy includes WebSearch and WebFetch tools, so a terminal session can gather current information and fetch exact pages when a URL is provided.

Deepy web research workflow

Quick Start

Install from PyPI after the first release:

uv tool install deepy-cli

The installed command is still deepy.

Install the latest code from GitHub:

uv tool install git+https://github.com/kirineko/deepy.git

Configure your DeepSeek API key:

deepy config setup

Start Deepy in a project:

cd your-project
deepy

Configuration

Deepy only uses TOML configuration. JSON config files are intentionally rejected.

# ~/.deepy/config.toml
api_key = "sk-..."
model = "deepseek-v4-pro"
base_url = "https://api.deepseek.com"
context_window_tokens = 1048576
compact_threshold = 0.8

WebSearch uses Deepy's hosted SearXNG endpoint by default. You can override it with your own SearXNG instance:

[tools.web_search]
searxng_url = "https://your-searxng.example/"

You can also initialize config non-interactively:

deepy config init --api-key sk-... --model deepseek-v4-pro

Common Commands

deepy --version
deepy config setup
deepy doctor
deepy doctor --live --json
deepy status
deepy skills list
deepy sessions list
deepy sessions show <session-id>
deepy run "summarize this project"

Inside the interactive terminal:

/skills   List available skills
/new      Start a fresh conversation
/resume   Pick a previous session
/         Open the command menu
Esc       Interrupt the current model turn
Ctrl+D    Press twice to quit

Project Rules And Skills

Deepy automatically loads project instructions from:

  • AGENTS.md
  • .deepy/skills/*/SKILL.md

This lets each repository define local conventions, commands, review rules, and domain-specific skills without changing global config.

Development

uv sync --group dev
uv run pytest
uv run ruff check
uv run pyright
uv build

The Python package is built from src/deepy. GitHub Pages files and screenshot assets live outside the package directory and are not included in the wheel.

Release Status

Deepy is preparing its first public 0.1.3 release. The current release path is GitHub + PyPI. Standalone binaries and npm wrappers can be added later, but the primary distribution is the Python CLI.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

deepy_cli-0.1.3.tar.gz (80.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

deepy_cli-0.1.3-py3-none-any.whl (103.2 kB view details)

Uploaded Python 3

File details

Details for the file deepy_cli-0.1.3.tar.gz.

File metadata

  • Download URL: deepy_cli-0.1.3.tar.gz
  • Upload date:
  • Size: 80.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","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}

File hashes

Hashes for deepy_cli-0.1.3.tar.gz
Algorithm Hash digest
SHA256 5e198b54b5602b92505445d68af645daf603a4645b17dac6f9322afac3695d33
MD5 4b3f32964907214e11b4da43563e83ab
BLAKE2b-256 6c1af240ba73589db967dc9f1071863410c06e28810fe31e107f282a7981c361

See more details on using hashes here.

File details

Details for the file deepy_cli-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: deepy_cli-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 103.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","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}

File hashes

Hashes for deepy_cli-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 373c538567d1340817041aef4fdafb9f159d5d29bc0bdbec7525da8c5246f794
MD5 e03ec27555a57d80535a7669ced11569
BLAKE2b-256 2c8ba86b9efab1492a6992cf836133ba348c245a1cab71c9cccb350fc5da2769

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page