DeepSeek AI-powered CLI agent with HITL guardrails for code assistance and automation
Project description
DeepSeeker
AI-powered CLI agent with HITL guardrails for code assistance and automation.
Features
- Multi-Provider Support: DeepSeek, OpenAI, Anthropic
- Tool Use: Bash, Read, Write, Edit, Glob, Grep
- HITL Guardrails: MQ-9 Reaper model for operation safety
- Streaming Responses: Real-time output with tool execution display
- Interactive Shell: Slash commands, history, auto-completion
Installation
pip install deepseeker
Quick Start
# Interactive mode
deepseekpy
# Quick query
deepseekpy -q "explain this code"
# Set API key
deepseekpy --key YOUR_DEEPSEEK_API_KEY
API Key Setup
On first launch, you'll be prompted to enter your API key:
No DEEPSEEK API key found
Get your key from: https://platform.deepseek.com/api-keys
Enter DEEPSEEK_API_KEY: sk-...
Keys are stored securely in ~/.agi/secrets.json (mode 0600).
HITL Guardrails (MQ-9 Reaper Model)
Operations are classified by risk level:
| Level | Approval | Examples |
|---|---|---|
| ROUTINE | Auto-approved | ls, git status, file reads |
| ELEVATED | Logged | File writes, git operations |
| CRITICAL | 1 confirmation | sudo operations, system changes |
| LETHAL | 2 confirmations + 5s delay | rm -rf /, disk writes |
Commands
| Command | Description |
|---|---|
/help |
Show help |
/model [provider] |
Switch AI provider |
/tools |
List available tools |
/guardrails |
Show guardrails status |
/secrets |
Manage API keys |
/exit |
Exit |
Tools
- Bash: Execute shell commands
- Read: Read files with line numbers
- Write: Create/overwrite files
- Edit: Precise text replacement
- Glob: Find files by pattern
- Grep: Search file contents
API Error Handling
DeepSeeker detects and handles API errors:
- Invalid Key: Prompts for new key
- Rate Limited: Shows wait message
- Frozen Account: Displays support info
- Quota Exceeded: Shows billing link
License
MIT License - see LICENSE for details.
Author
Bo Shang bo@shang.software
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file deepseeker-2.3.1.tar.gz.
File metadata
- Download URL: deepseeker-2.3.1.tar.gz
- Upload date:
- Size: 161.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b1f1a09a3fb533684eb23c0f35c9ba24bec7bd08a1638ddfd6c086c231830a16
|
|
| MD5 |
4f4944991fcb7a619b9bd509841b695a
|
|
| BLAKE2b-256 |
78c11fd03ea8ba691935199b24f8538329f26d3cadc3cff9e187a725dba32ed5
|
Provenance
The following attestation bundles were made for deepseeker-2.3.1.tar.gz:
Publisher:
workflow.yml on ErosolarAI/deepseeker
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
deepseeker-2.3.1.tar.gz -
Subject digest:
b1f1a09a3fb533684eb23c0f35c9ba24bec7bd08a1638ddfd6c086c231830a16 - Sigstore transparency entry: 799022223
- Sigstore integration time:
-
Permalink:
ErosolarAI/deepseeker@141a5d73bb4933d0e830bc4470533407bf7e7292 -
Branch / Tag:
refs/tags/v2.3.1 - Owner: https://github.com/ErosolarAI
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
workflow.yml@141a5d73bb4933d0e830bc4470533407bf7e7292 -
Trigger Event:
push
-
Statement type:
File details
Details for the file deepseeker-2.3.1-py3-none-any.whl.
File metadata
- Download URL: deepseeker-2.3.1-py3-none-any.whl
- Upload date:
- Size: 157.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5f84ce1abed18f3baa47ee51cb911e4cf42b84fb299afd5b1d369acd78c09381
|
|
| MD5 |
435d061d2d7659b0c1b796ead1848903
|
|
| BLAKE2b-256 |
a3b6f6fa273ce8c3b30451f7ed645086cd6fe4d5859c995295ce71dbb28fbdef
|
Provenance
The following attestation bundles were made for deepseeker-2.3.1-py3-none-any.whl:
Publisher:
workflow.yml on ErosolarAI/deepseeker
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
deepseeker-2.3.1-py3-none-any.whl -
Subject digest:
5f84ce1abed18f3baa47ee51cb911e4cf42b84fb299afd5b1d369acd78c09381 - Sigstore transparency entry: 799022224
- Sigstore integration time:
-
Permalink:
ErosolarAI/deepseeker@141a5d73bb4933d0e830bc4470533407bf7e7292 -
Branch / Tag:
refs/tags/v2.3.1 - Owner: https://github.com/ErosolarAI
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
workflow.yml@141a5d73bb4933d0e830bc4470533407bf7e7292 -
Trigger Event:
push
-
Statement type: