
Clawd Code Python Port
Learn and operate the clawd-code Python agent harness—CLI, tools, commands, and oh-my-codex workflows—for parity with Claude Code patterns.
Overview
clawd-code-python-port is an agent skill for the Build phase that explains how to install, run, extend, and audit the clawd-code Python Claude Code–style agent harness via CLI and oh-my-codex.
Install
npx skills add https://github.com/aradotso/trending-skills --skill clawd-code-python-portWhat is this skill?
- Documents an educational Python rewrite of Claude Code-style tool wiring and task orchestration
- Covers CLI entrypoint, adding tools, extending commands, and workspace verification flows
- Explicit oh-my-codex (OmX) orchestration path for end-to-end project workflows
- Includes parity audit and Python workspace verification triggers from SKILL.md
- States independent implementation without copying proprietary TypeScript source
Adoption & trust: 665 installs on skills.sh; 31 GitHub stars; 2/3 security scanners passed (skills.sh audits).
What problem does it solve?
You want Claude Code–like agent harness behavior in Python but lack a map of commands, extension points, and verification steps.
Who is it for?
Indie builders hacking on custom agent CLIs who learn by reading harness architecture and running local parity checks.
Skip if: Teams that need vendor-supported Claude Code only and do not want to maintain a separate Python agent fork.
When should I use this skill?
Use when SKILL.md triggers match: running clawd-code, Python port usage, CLI commands, extending tools/commands, parity audit, or workspace verification.
What do I get? / Deliverables
You can clone clawd-code, run the CLI, add tools or commands, and execute parity or workspace audits with OmX-aligned workflows.
- Working local clawd-code CLI session
- Extended tool or command module verified via parity or workspace checks
Recommended Skills
Journey fit
Canonical shelf is Build → agent-tooling because the skill documents how to run, extend, and audit a custom agent runtime in Python. Agent-tooling is the right facet for harness architecture, tool wiring, command dispatch, and parity audits—not app feature code.
How it compares
Reference skill for an open Python harness—not a hosted MCP server or a one-shot code generator.
Common Questions / FAQ
Who is clawd-code-python-port for?
Developers using Codex or similar agents who want procedural guidance for the instructkr/clawd-code Python port and oh-my-codex orchestration.
When should I use clawd-code-python-port?
Use it in Build when standing up the harness, adding a tool or command, or when triggers like “how do I run clawd-code” or “how do I run the parity audit in clawd-code” match your task.
Is clawd-code-python-port safe to install?
It describes cloning third-party repos and running local Python tooling—review upstream code and the Security Audits panel on this Prism page before executing in sensitive environments.
SKILL.md
READMESKILL.md - Clawd Code Python Port
# clawd-code Python Port > Skill by [ara.so](https://ara.so) — Daily 2026 Skills collection. ## What This Project Does **clawd-code** is an independent Python rewrite of the Claude Code agent harness, built from scratch for educational purposes. It captures the architectural patterns of Claude Code — tool wiring, command dispatch, task orchestration, and agent runtime context — in clean Python, without copying any proprietary TypeScript source. The project is orchestrated end-to-end using [oh-my-codex (OmX)](https://github.com/Yeachan-Heo/oh-my-codex), a workflow layer on top of OpenAI Codex. It is **not affiliated with or endorsed by Anthropic**. --- ## Installation ```bash # Clone the repository git clone https://github.com/instructkr/clawd-code.git cd clawd-code # (Optional but recommended) Create a virtual environment python3 -m venv .venv source .venv/bin/activate # Install dependencies (if a requirements.txt or pyproject.toml is present) pip install -r requirements.txt # or pip install -e . ``` No API keys are needed for the manifest/summary/CLI commands. If you extend the query engine to call a live model, set your key via environment variable: ```bash export ANTHROPIC_API_KEY="your-key-here" export OPENAI_API_KEY="your-key-here" ``` --- ## Repository Layout ``` . ├── src/ │ ├── __init__.py │ ├── commands.py # Command port metadata │ ├── main.py # CLI entrypoint │ ├── models.py # Dataclasses: subsystems, modules, backlog │ ├── port_manifest.py # Python workspace structure summary │ ├── query_engine.py # Renders porting summary from active workspace │ ├── task.py # Task orchestration primitives │ └── tools.py # Tool port metadata ├── tests/ # unittest-based verification └── assets/ ``` --- ## Key CLI Commands All commands run via `python3 -m src.main <subcommand>`. ```bash # Print a human-readable porting summary python3 -m src.main summary # Print the current Python workspace manifest python3 -m src.main manifest # List current Python modules/subsystems (paginated) python3 -m src.main subsystems --limit 16 # Inspect mirrored command inventory python3 -m src.main commands --limit 10 # Inspect mirrored tool inventory python3 -m src.main tools --limit 10 # Run parity audit against local ignored archive (when present) python3 -m src.main parity-audit # Run the full test suite python3 -m unittest discover -s tests -v ``` --- ## Core Data Models (`src/models.py`) The dataclasses define the shape of the porting workspace: ```python from dataclasses import dataclass, field from typing import List, Optional @dataclass class Module: name: str status: str # e.g. "ported", "stub", "backlog" source_path: str notes: Optional[str] = None @dataclass class Subsystem: name: str modules: List[Module] = field(default_factory=list) description: Optional[str] = None @dataclass class PortManifest: subsystems: List[Subsystem] = field(default_factory=list) backlog: List[str] = field(default_factory=list) version: str = "0.1.0" ``` --- ## Tools System (`src/tools.py`) Tools are the callable units in the agent harness. Each tool entry carries metadata for dispatch: ```python from dataclasses import dataclass from typing import Callable, Optional, Any, Dict @dataclass class Tool: name: str description: str parameters: Dict[str, Any] # JSON-schema style param