by os-factory
HAR: open agent harness (CLI + MCP) for coding agents. Isolated worktrees, deterministic verify, software factory workflows for Claude Code, Cursor, and Codex.
Requires a passing catalog security scan.
⚠️ Third-Party Software Notice
This skill is third-party open-source software developed and hosted independently on GitHub. SkillsLLM is an informational directory and does not control or maintain the underlying repository.
Any security checks, ratings, or warnings displayed by SkillsLLM are automated and limited in scope. They do not constitute a security certification or guarantee that the software is safe, error-free, or free from malicious code, vulnerabilities, compromised dependencies, or prompt-injection risks.
Review the source code, permissions, dependencies, and configuration before installing or running any third-party skill. Use is at your own risk. To the maximum extent permitted by applicable law, SkillsLLM is not liable for losses arising from third-party software.
# Add to your Claude Code skills
git clone https://github.com/os-factory/harGuides for using ai agents skills like har.
Last scanned: 10/27/2026
{
"issues": [
{
"type": "npm-audit",
"message": "@hono/node-server: Node.js Adapter for Hono: Path traversal in `serve-static` on Windows via encoded backslash (`%5C`)",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "@modelcontextprotocol/sdk: MCP TypeScript SDK: OAuth client could send credentials to an authorization server chosen by the MCP server",
"severity": "high"
},
{
"type": "npm-audit",
"message": "@npmcli/arborist: Vulnerability found",
"severity": "high"
},
{
"type": "npm-audit",
"message": "@npmcli/metavuln-calculator: Vulnerability found",
"severity": "high"
},
{
"type": "npm-audit",
"message": "@semantic-release/npm: Vulnerability found",
"severity": "high"
},
{
"type": "npm-audit",
"message": "@sigstore/core: @sigstore/core has DSSE payloadType type-binding failure",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "@sigstore/sign: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "@sigstore/verify: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "baseline-browser-mapping: baseline-browser-mapping process termination on invalid input causes denial of service",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "body-parser: body-parser vulnerable to Denial of Service via trailing bytes after a compressed request body",
"severity": "high"
},
{
"type": "npm-audit",
"message": "brace-expansion: brace-expansion: Zero-step sequence causes process hang and memory exhaustion",
"severity": "high"
},
{
"type": "npm-audit",
"message": "browserslist: Browserslist: Unbounded memory growth (no cache eviction) via distinct query results, leading to eventual OOM",
"severity": "high"
},
{
"type": "npm-audit",
"message": "esbuild: esbuild enables any website to send any requests to the development server and read the response",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "fast-uri: fast-uri vulnerable to host confusion via literal backslash authority delimiter",
"severity": "high"
},
{
"type": "npm-audit",
"message": "handlebars: Handlebars: JavaScript Injection via Unsafe Inline Embedding of Precompiled Templates",
"severity": "critical"
},
{
"type": "npm-audit",
"message": "hono: Hono: ReDoS in CORS middleware via Access-Control-Request-Headers",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "http-cache-semantics: http-cache-semantics max-stale handling can disclose cross-user cached responses",
"severity": "high"
},
{
"type": "npm-audit",
"message": "ip-address: ip-address has XSS in Address6 HTML-emitting methods",
"severity": "high"
},
{
"type": "npm-audit",
"message": "js-yaml: JS-YAML: Quadratic-complexity DoS in merge key handling via repeated aliases",
"severity": "high"
},
{
"type": "npm-audit",
"message": "libnpmdiff: Vulnerability found",
"severity": "high"
},
{
"type": "npm-audit",
"message": "libnpmexec: Vulnerability found",
"severity": "high"
},
{
"type": "npm-audit",
"message": "libnpmfund: Vulnerability found",
"severity": "high"
},
{
"type": "npm-audit",
"message": "libnpmpack: Vulnerability found",
"severity": "high"
},
{
"type": "npm-audit",
"message": "libnpmpublish: Vulnerability found",
"severity": "high"
},
{
"type": "npm-audit",
"message": "npm: Vulnerability found",
"severity": "high"
},
{
"type": "npm-audit",
"message": "pacote: pacote is vulnerable to Denial of Service (DoS) via the addGitSha function",
"severity": "high"
},
{
"type": "npm-audit",
"message": "picomatch: Picomatch: Method Injection in POSIX Character Classes causes incorrect Glob Matching",
"severity": "high"
},
{
"type": "npm-audit",
"message": "postcss-selector-parser: postcss-selector-parser allows denial of service through uncontrolled AST recursion",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "proxy-addr: proxy-addr vulnerable to IP spoofing via IPv4-mapped IPv6 trust subnet",
"severity": "critical"
},
{
"type": "npm-audit",
"message": "qs: qs array-limit bypass via bracket-key comma parsing",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "semantic-release: Vulnerability found",
"severity": "high"
},
{
"type": "npm-audit",
"message": "sigstore: Vulnerability found",
"severity": "high"
},
{
"type": "npm-audit",
"message": "tar: node-tar applies PAX size override to intermediary GNU long-name/long-link headers, causing tar parser interpretation differential (file smuggling)",
"severity": "critical"
},
{
"type": "npm-audit",
"message": "undici: undici vulnerable to downstream response desynchronization via retry interceptor",
"severity": "high"
},
{
"type": "npm-audit",
"message": "zod: Zod can exhaust memory while validating oversized constrained collections",
"severity": "high"
}
],
"status": "FAILED",
"scannedAt": "2026-10-27T09:38:32.490Z",
"npmAuditRan": true,
"pipAuditRan": true,
"promptInjectionRan": true
}See how har compares with popular alternatives.
HAR is an open-source agent harness for AI coding workflows you can trust and verify. It runs every coding agent in its own isolated, consistent worktree, with deterministic validation, verifiable proof, and full observability. Run one agent or a whole fleet, with the same quality and control. It wraps the tools, tests, and CI you already use, and stays yours to customize.
Works with Claude Code · Cursor · Codex · any MCP agent.
npm install -g @osfactory/har
cd my-app
har onboard # scaffold .har/ and print a prompt for your coding agent
har env launch 1 # isolated worktree + running stack for agent slot 1
har env verify 1 --full # run the project's real checks, record what passed
Full walkthrough: Quickstart.
Running a coding agent is easy. Trusting what it produced, without re-checking every change by hand, is the hard part, and it only gets harder as tasks grow more complex and you run more agents at once. HAR was built to close those gaps:
No standard way to run or verify a repo. That knowledge is scattered across a README, a CLAUDE.md, Cursor rules, and CI yaml today, drifting out of sync with each other and the actual codebase. HAR replaces all of that with one machine-readable contract (.har/) that Claude Code, Cursor, Codex, or any MCP agent reads the same way.
Multiple agents on one repo collide. Shared dev server, shared database, shared ports, conflicting git state. HAR gives each agent its own worktree, ports, and database per slot, so a fleet can genuinely run concurrently.
Trusting an agent's change means re-verifying it yourself. Every task runs the same deterministic verify step and leaves an evidence trail, logs, artifacts, a validated tree hash, so a reviewer can check proof of what ran instead of relying on the agent's self-report.
One platform's sandbox locks you in. If the contract lives inside a vendor's hosted dashboard, switching coding agents later means rebuilding the whole verification setup. HAR's contract is an open standard living in the repo itself, portable across whichever agent or tool you adopt.
Hand-rolled scripts rot as the stack changes. A new dependency, a new service, a new env var, and nobody updates the script until an agent's run fails for a confusing reason. har env maintain diffs your installed harness against current templates and flags drift before it causes a silent failure.
HAR coordinates the work around the model, so agents can focus on the code and reviewers can trust the result.
flowchart LR
D["Discover<br/>reads the harness contract"] --> I["Isolate<br/>one slot per agent"]
I --> A1["Agent 1<br/>own worktree, branch, ports, DB"] --> B1["Build"] --> V1["Verify"]
I --> A2["Agent 2<br/>own worktree, branch, ports, DB"] --> B2["Build"] --> V2["Verify"]
V1 --> H["Hand off<br/>branch + evidence"]
V2 --> H
Discover. The agent asks the harness what this project looks like, including its stack, its scripts, and what checks are available.
Isolate. Every task gets its own slot. That means a fresh copy of the repo on its own branch, with its own ports and, where the project needs it, its own database. Nothing is shared with the main checkout or with any other agent's slot.
Build. The agent edits and tests its work entirely inside that isolated copy. The main checkout stays untouched the whole time.
Verify. The project's own checks, whatever they are, run through the same pipeline every time and produce a consistent result. A full verification goes further and captures the state of the entire codebase at that moment, so a pass is tied to the exact code that was checked.
Hand off. Once verification passes, the session is torn down, but the branch and the proof of what ran are kept. A reviewer gets the code plus the evidence that it was checked.
Everything beyond install and first commands lives at harproject.dev.
har executable exposes.See CONTRIBUTING.md for local setup, the dogfood harness loop, and architecture. Coding agents working on this repo should start with AGENTS.md. Maintainer release process: RELEASING.md.
HAR is sponsored by Kerno, runtime code and security tester for coding agents.
Licensed under the Apache License 2.0.
Report vulnerabilities via SECURITY.md.
har is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by os-factory. HAR: open agent harness (CLI + MCP) for coding agents. Isolated worktrees, deterministic verify, software factory workflows for Claude Code, Cursor, and Codex. It has 128 GitHub stars.
har failed SkillsLLM's automated security scan, which flagged one or more high-severity issues. Review the Security Report section carefully before using it.
Clone the repository with "git clone https://github.com/os-factory/har" and add it to your Claude Code skills directory (see the Installation section above).
har is primarily written in TypeScript. It is open-source under os-factory on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh har against similar tools.
No comments yet. Be the first to share your thoughts!