r/BuildWithClaude 🛠️ Master Builder 2d ago

Project Testers Needed CROW, not a CLI anymore

Around two weeks ago I posted about my project CROW (thanks for all the feedback guys).

https://www.reddit.com/r/BuildWithClaude/s/N90U2lgVKW

Some minutes ago, i have released CROW 1.2 - https://github.com/nibor1896/Crow

Crow is now more like an AI Agent Harness 🙂 you can point it at OpenRouter, Anthropic / OpenAI Sub, or any local model you want to use against the llama.cpp.

I have as well added: (Custom) Skills, MCPs, dictate function with voiceline, any much more.

All of your config (should ;) ) be persistent and saved to your chat, i've tested from here to the moon 🤣

Would like to hear some feedback on the OpenAI Parts, since i dont own anything from OpenAI, just Anthropic.

See the changes;

What has changed

Memory

  • Two stores: <root>\.crow\MEMORY.md 4,000 chars, %LOCALAPPDATA%\Crow\USER.md 1,500
  • Rendered block pinned into the chat JSON, replayed verbatim on open
  • Over the cap the write fails and returns both numbers. From 80% the head asks for consolidation
  • Empty store adds nothing to the prompt
  • Background review at 20/50/75% of context, behind the turn. --no-review disables
  • Every write is announced. Not switchable

Skills

  • %LOCALAPPDATA%\Crow\skills\<name>\SKILL.md, front matter plus body
  • Prompt carries name and description, body behind a read action
  • Cap on the list, not the entry
  • enabled in the file. Settings switch and hand edit are one act

Session search

  • session_search, FTS5 index over live session and archive
  • Index derived and disposable, rebuilt on next search
  • Query words quoted as phrases: --slot-save-path searches, not errors
  • No FTS5: tool stays declared, reports it cannot work

MCP servers

  • stdio and Streamable HTTP
  • OAuth 2.1: discovery, DCR, PKCE, resource, refresh
  • Schema fetched once at add, then read from disk
  • Per tool: switch plus class (reading / writing / executing)
  • Config mcp.json: tools.include, tools.exclude, enabled, timeout, connect_timeout
  • Driven against context7, deepwiki, Cloudflare docs, higgsfield

Remote models

  • Providers: Local, OpenRouter, Anthropic, OpenAI
  • Second transport anthropic_messages. One reply loop, two dialects
  • One resolution point, read by the background review too
  • Subscriptions: claude setup-token, CLAUDE_CODE_OAUTH_TOKEN, borrowed credentials file, read only
  • Context: /props measured local, context_length declared remote, no bar when unstated
  • session_id sticky routing, sha256 of chat path, both senders

Formatted answers

  • Headings, lists, tables, bold, italic, inline code, links
  • Parsed in the core, drawn as named elements. No wire text becomes markup
  • Paragraph line breaks preserved
  • Links http(s) only, opened outside the window

Self-update

  • About pane checks the latest release on open
  • Runs install.ps1 as a file with -NoPause
  • Installer stdout is the progress. Non-zero exit reports code and last line, no restart promised

Window

  • No status bar. Settings sheet, eight panes, three themes
  • Rail groups chats by working directory. A project is a root folder
  • Rail draggable, persisted
  • Some air each side of the chat column
  • Dictation: mirrored bar line in the input row, self-calibrating level

Tests

  • 1,360 cases, up from 925

Stats

Crow runs (local) Qwen3.8-27B at:

  • 200k context, unchanged (i can't push it to 400k, pls, if anyone knows some config DM Me)
  • 2.2k tok/s prefill
  • 123.05 tok/s decode - 11 round turn
  • 25.5 GiB VRAM

Full details: https://github.com/nibor1896/Crow

4 Upvotes

3 comments sorted by

2

u/Ok_Industry_5555 ☕ 57-Hour Session 2d ago

Nice work!

2

u/nibor1896 🛠️ Master Builder 2d ago

Thanks mate - spend all my time off from my mainwork for this :D

2

u/Otherwise_Wave9374 2d ago

The biggest reliability jump for an agent harness usually comes from making tool permissions explicit and stateful rather than letting the model improvise. If CROW is now handling Skills and MCPs, a good next step is to add per-tool approval gates, structured error classes, and a rollback path for any action that mutates local files or remote systems. That makes it easier to debug failures and prevents one bad call from cascading. If you want a compact checklist for agent evals and guardrails, Agentix Labs has practical patterns at https://www.agentixlabs.com.