Skip to content

philo-kim/openharness

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OpenHarness

AI 코딩 에이전트의 최근 세션 파일을 찾아 서로 참조하게 해주는 로컬 MCP 서버.

전용 하네스 없이 하네스처럼 동작한다. 기존 도구 환경을 그대로 유지하면서, 에이전트 간 세션을 연결하는 디스커버리 레이어.

Supported Agents (MVP)

Agent Session Path Format
Claude Code ~/.claude/projects/ JSONL
Codex CLI ~/.codex/sessions/ JSONL
Gemini CLI ~/.gemini/tmp/<hash>/chats/ JSON

Prerequisites

  • Each agent must be able to read local files directly.
  • OpenHarness only provides paths and metadata — it does not transform, relay, or store session content.

Install

npm install -g @freebird-ai/openharness
openharness init

This registers OpenHarness as an MCP server in each agent's config.

MCP Tools

get_agent_sessions

Returns recent session paths for all agents, filtered by project.

Input:

{ "project": "/Users/me/my-app" }

Output:

[
  {
    "agent": "claude-code",
    "path": "/Users/me/.claude/projects/-Users-me-my-app/session.jsonl",
    "format": "jsonl",
    "updatedAt": "2026-03-17T14:32:00Z",
    "matchedProject": "/Users/me/my-app",
    "matchedBy": "directory-name"
  }
]

get_agent_session

Returns the recent session path for a specific agent.

Input:

{ "agent": "claude-code", "project": "/Users/me/my-app" }

Output:

{
  "agent": "claude-code",
  "path": "/Users/me/.claude/projects/-Users-me-my-app/session.jsonl",
  "format": "jsonl",
  "updatedAt": "2026-03-17T14:32:00Z",
  "matchedProject": "/Users/me/my-app",
  "matchedBy": "directory-name"
}

Returns null if no session is found.

Project Matching

Agent Strategy
Claude Code Project path escaped with - as directory name
Codex CLI Workspace field inside session JSONL
Gemini CLI Project path hash matching tmp/<hash>/

How It Works

User → Codex: "Review what Claude Code worked on recently"

Codex → OpenHarness MCP: get_agent_session({ agent: "claude-code", project: "..." })
Codex ← receives session path + metadata
Codex → reads the JSONL file directly and performs review

No rules needed in agent instruction files. MCP tool descriptions are enough for agents to use naturally.

Manual MCP Configuration

If you prefer to configure manually instead of using init:

{
  "mcpServers": {
    "openharness": {
      "command": "openharness",
      "args": []
    }
  }
}

Add this to your agent's MCP config file:

Agent Config File
Claude Code ~/.claude/mcp.json or project .mcp.json
Codex CLI project .codex/
Gemini CLI ~/.gemini/settings.json

License

MIT

About

Local MCP server that lets AI coding agents discover and reference each other's recent sessions.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors