I want to build a coding assistant much like claude

 I want to have a class just for the client. I want to use openai or asyncopenai 
 because I can go to openai, my local ollama, or open router. that gives us options. 

 we need some sort of confiugration class.
 Im going to need tool support and mcp support. 
 I also want to be able to implement tools like read_file, write_file, grep, web_search, shell_tools, diff tool,
 list_dir_tool, todos/planning tool, maybe even sub agents as well as scheduling.
 we will also build hooks and slash commands.
  we are going to need to monitor token usage so we can compress.
  we will need a plan mode and an active  mode.
  lets get started simple but I wanted to lay everything out.
  we are probably going to create a pypi package so we need to keep that in mind when building.
  It should be a command line app with a nice user interface.

lets start with the basic package setup and
then with the basic implementation first, lets just ask the llm a question and get it to respond.

  1. Context compression — This is getting urgent. Tool results (especially read_file and shell) dump a lot of tokens into the conversation. Long sessions will hit the         context limit and break silently. Need to detect when we're getting close and summarize older messages.                                                                     
  2. System prompt from project file — Load a CASS.md from the working directory so the LLM understands the project it's working in. Simple to build, big quality-of-life     
  improvement.
  3. Conversation save/load — Persist conversations to disk so you can resume sessions.
  4. Hooks — Pre/post tool execution hooks (e.g., auto-lint after write_file/edit_file).
  5. Plan mode vs active mode — From your original roadmap. Plan mode where the LLM proposes changes without executing, active mode where it does.




  Remaining from your roadmap:
  1. MCP support — Connect to external MCP servers for additional tools
  2. Sub-agents — Spawn a second LLM instance for focused subtasks
  3. Scheduling — Run tasks on a schedule
  4. Todos/planning tool — Structured task tracking within a session

  Quality-of-life I'd recommend:
  5. Test suite — Formalize the tool tests before the codebase gets bigger
  6. Multi-line input — Right now you can't paste code blocks into the prompt
  7. PyPI publishing — You mentioned wanting this eventually
  8. Prompt toolkit — Better input with history, autocomplete, key bindings

  My top 3 in order:

  1. Test suite — The codebase is substantial now. Adding tests before more features protects what's working.
  2. Multi-line input — Small effort, big usability win for a coding assistant.
  3. MCP support — The most impactful remaining feature from your roadmap.

  will it do git commits?
  we need documentation
  readme
  license file
  i need an /init for existing projects
need switch to run off auto complete
code coverage

  we need complex custom commands not just simple ones.
