Skip to main content

Prompt Copilot CLI

Prompt Copilot CLI is a lightweight terminal-based coding agent for local development workflows. It combines an OpenAI-compatible model with a set of practical tools for file operations, shell commands, Python execution, multimodal image handling, and MCP integrations.

It is designed for developers who want an interactive coding assistant that can inspect a workspace, edit files, run commands, and help turn multi-step conversations into a final, actionable prompt.

✨ Features

  • Interactive CLI experience in the terminal
  • Persistent session history and conversation logs
  • File-system tools for reading, writing, deleting, renaming, copying, and recursive directory listing
  • Shell command execution and Python script execution
  • Image support for vision-capable models via image-to-base64 conversion
  • MCP tool integration for extending the agent with external tools
  • Task workflow with /task-start and /task-end to generate a polished final prompt

🚀 Quick Start

1. Install dependencies

py -m pip install -r requirements.txt

2. Configure the model

On first launch, the project creates a configuration file at:

  • Windows: %USERPROFILE%\.prompt-copilot\config.json
  • Linux/macOS: ~/.prompt-copilot/config.json

Example:

{
  "model": "gpt-4o-mini",
  "base_url": "http://127.0.0.1:11434/v1",
  "api_key": "dummy",
  "temperature": 0.2,
  "debug": false,
  "mcp": {
    "enabled": true,
    "servers": []
  }
}

3. MCP configuration (optional)

The agent can discover and use external MCP tools through the mcp.servers array. This is useful when you want to extend the agent with tools such as web search, filesystem helpers, or other local services.

Example configuration:

{
  "mcp": {
    "enabled": true,
    "servers": [
      {
        "name": "bing",
        "command": "npx",
        "args": ["-y", "bing-cn-mcp"]
      },
      {
        "name": "open-websearch-http",
        "transport": "http",
        "url": "http://127.0.0.1:3000/mcp"
      }
    ]
  }
}

How it works:

  • The first server uses a local stdio-based MCP server launched by npx.
  • The second server connects to an HTTP MCP endpoint at the given URL.
  • Once discovered, the tools exposed by these servers become callable by the agent during a session.
  • If enabled is set to false or the server list is empty, no MCP tools will be loaded.

4. Run the agent

Interactive mode:

py main.py

One-off task mode:

py main.py -t "Create a simple HTML landing page" -d ./workspace -l en

🧭 Usage Guide

Interactive commands

Once the CLI starts, you can use these commands:

  • /exit — quit the program
  • /clear — clear local session history
  • /task-start — start a task context for later summarization
  • /task-end — generate a final optimized prompt and save it to last-prompt.md

Common startup options

py main.py -h

Key options:

  • -t, --task — one-off task content
  • -d, --workdir — working directory
  • -l, --lang — language (zh or en)
  • -amc, --agent-messages-count — number of messages kept in agent history
  • -rd, --request-delay — delay between model requests in seconds
  • -hc, --history-count — number of rounds kept in conversation history
  • --reset-session — reset persisted session history

Example workflows

1. Ask the agent to inspect a project

py main.py -t "Inspect this repository and summarize the main structure" -d ./workspace

2. Ask the agent to edit files and run tests

py main.py -t "Update the code, then run the relevant test suite" -d ./workspace

3. Ask the agent to analyze an image

If your model supports vision, the agent can use the built-in image tool to read an image file and convert it to base64 for multimodal input.

Example prompt:

Please inspect the image in ./workspace/demo.png and tell me what numbers or text are visible.

🛠 Tool capabilities

The agent can call the following tools:

  • File tools
    • read_file
    • write_file
    • delete_file
    • create_directory
    • delete_directory
    • rename_path
    • copy_file
    • list_dir (with recursive option)
  • Execution tools
    • execute_command
    • execute_python_script
  • Multimodal tools
    • read_image_as_base64

🧠 Task flow

The project supports a lightweight task-iteration workflow:

  1. Start a round with /task-start
  2. Continue interacting with the agent to clarify requirements or refine the task
  3. Finish with /task-end
  4. The agent writes the final prompt to last-prompt.md

This is useful when you want to turn a long back-and-forth conversation into a compact, executable prompt.

📁 Project structure

.
├── main.py
├── requirements.txt
├── README.md
├── README.zh-CN.md
├── tests/
└── workspace/

🤝 Contributing

Contributions are welcome. Please feel free to open an issue or submit a pull request if you have suggestions, bug reports, or new workflow ideas.

📄 License

This project does not currently declare a specific license. If you plan to distribute or reuse it publicly, please add an appropriate license file.

Download files

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

Source Distribution

prompt_copilot_cli-0.1.1.tar.gz (30.4 kB view details)

Uploaded Source

Built Distribution

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

prompt_copilot_cli-0.1.1-py3-none-any.whl (25.1 kB view details)

Uploaded Python 3

File details

Details for the file prompt_copilot_cli-0.1.1.tar.gz.

File metadata

  • Download URL: prompt_copilot_cli-0.1.1.tar.gz
  • Upload date:
  • Size: 30.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for prompt_copilot_cli-0.1.1.tar.gz
Algorithm Hash digest
SHA256 35303404ac526fdaffcbb4f9360c78aa831578a63ad97bc8a42719dccacd3dcf
MD5 b0d84e90f8ad4f463c7db861b6249e75
BLAKE2b-256 ba4c5d98e45a0c8731441eda138b612e88bc8cb10915347e68961cc0501660fb

See more details on using hashes here.

File details

Details for the file prompt_copilot_cli-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for prompt_copilot_cli-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d9ddc969817f1aa7c15e3bd31eff3e8eb1c4e927e93ad6a39bf650b70f7ffd38
MD5 7a65aab3398d6b3b0928df37be69ce96
BLAKE2b-256 5298e158f32871f7b17a6b0d4f704d5b1b46b058b9bab7239a461ca9cc436f62

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