All notable changes to OpenHarness should be recorded in this file.
The format is based on Keep a Changelog, and this project currently tracks changes in a lightweight, repository-oriented way.
diagnoseskill: trace agent run failures and regressions using structured evidence from run artifacts.- OpenAI-compatible API client (
--api-format openai) supporting any provider that implements the OpenAI/v1/chat/completionsformat, including Alibaba DashScope, DeepSeek, GitHub Models, Groq, Together AI, Ollama, and more. OPENHARNESS_API_FORMATenvironment variable for selecting the API format.OPENAI_API_KEYfallback when using OpenAI-format providers.- GitHub Actions CI workflow for Python linting, tests, and frontend TypeScript checks.
CONTRIBUTING.mdwith local setup, validation commands, and PR expectations.docs/SHOWCASE.mdwith concrete OpenHarness usage patterns and demo commands.- GitHub issue templates and a pull request template.
- Shell-escape
$ARGUMENTSsubstitution in command hooks to prevent shell injection from payload values containing metacharacters like$(...)or backticks. - Swarm
_READ_ONLY_TOOLSnow uses actual registered tool names (snake_case) instead of PascalCase, fixing read-only auto-approval inhandle_permission_request. - Memory scanner now parses YAML frontmatter (
name,description,type) instead of returning raw---as description. - Memory search matches against body content in addition to metadata, with metadata weighted higher for relevance.
- Memory search tokenizer handles Han characters for multilingual queries.
- Fixed duplicate response in React TUI caused by double Enter key submission in the input handler.
- README now links to contribution docs, changelog, showcase material, and provider compatibility guidance.
- README quick start now includes a one-command demo and clearer provider compatibility notes.
- README provider compatibility section updated to include OpenAI-format providers.
- Initial public release of OpenHarness.
- Core agent loop, tool registry, permission system, hooks, skills, plugins, MCP support, and terminal UI.