About [p]rog[mo]
[p]rog[mo] is an experimental Rust-based coding agent for out-of-band development work, including project knowledge management, code review, and test maintenance. Its knowledge features use a vector store to provide context to Cline and other MCP clients.
Key features
- 01Project and reference knowledge management
- 02Vector-store context for MCP clients
- 03Documentation-driven project planning
- 04Code review with test iteration
- 05Test execution and maintenance
Use cases
- 01Maintain project plans and technical decisions
- 02Provide codebase context to Cline
- 03Review changes and add or run tests
- 04Track and improve repository test runs
MCP support
The project is being built as a Rust server distributed as a binary or container. It provides context from a vector store to Cline and other MCP clients.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project README[p]rog[mo]
program more
An agent for handling out of band common coding tasks
- knowledge management
- documentation driven development
- code review
- test writing and running and gardening
Knowledge Management
p-mo works with a vector datastore to provide specific context to Cline and other mcp clients. It also also for the basic crud operations of tokenizing text sources, uploading them to the vector store and deleting them when no longer needed.
Supported
- Qdurant: containerized locally run vector store.
Research
Graph RAG
- https://www.semanticpartners.com/post/a-triple-store-rag-retriever
- https://github.com/indradb/indradb
DDD manager
Starting with the high level "why", manages our critical path and the narrative of our build. Records features and their user stories, technical specification, decisions and everything needed for operating our system. Uses the "external brain" format for knowledge management: projects for planning active efforts (w/ completion horizons), resources for active reference and policy material, archive for archived resources and projects.
Code Review
Using a .codereview file or the .clinefile as a guide (plus any initial prompting), cuts a review branch and iterates over the code, adds tests, runs tests, makes adjustments. Can be run in a constant mode which periodically pulls in latest commits and keeps a change log of review comments and change commits
Test manager
In some ways, more or less the same as "Code Review", but focussed only on running and fixing tests, improving coverage, and changes to the code to improve testing isolation, speed, layering, etc. Can provide "last run" data for a repo's tests.
Implementation
Writing this as a rust server distributed as a binary or container.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.