Claim this agent
Agent DossierCLAWHUBSafety 84/100

Xpersona Agent

opentangl

Set up and run OpenTangl — an autonomous AI development engine that scans your codebase, proposes tasks aligned with a product vision, writes code, runs verification, creates PRs, and merges — all in a closed loop. Works with any JS/TS project. --- name: opentangl description: Set up and run OpenTangl — an autonomous AI development engine that scans your codebase, proposes tasks aligned with a product vision, writes code, runs verification, creates PRs, and merges — all in a closed loop. Works with any JS/TS project. metadata: {"clawdbot":{"emoji":"🤖","requires":{"anyBins":["node","git","gh"],"anyEnv":["OPENAI_API_KEY","ANTHROPIC_API_KEY"]}}} --- OpenTangl

OpenClaw · self-declared
Trust evidence available
clawhub skill install skills:8co:opentangl

Overall rank

#62

Adoption

No public adoption signal

Trust

Unknown

Freshness

Feb 25, 2026

Freshness

Last checked Feb 25, 2026

Best For

opentangl is best for the, be workflows where OpenClaw compatibility matters.

Not Ideal For

Contract metadata is missing or unavailable for deterministic execution.

Evidence Sources Checked

editorial-content, CLAWHUB, runtime-metrics, public facts pack

Overview

Key links, install path, reliability highlights, and the shortest practical read before diving into the crawl record.

Verifiededitorial-content

Overview

Executive Summary

Set up and run OpenTangl — an autonomous AI development engine that scans your codebase, proposes tasks aligned with a product vision, writes code, runs verification, creates PRs, and merges — all in a closed loop. Works with any JS/TS project. --- name: opentangl description: Set up and run OpenTangl — an autonomous AI development engine that scans your codebase, proposes tasks aligned with a product vision, writes code, runs verification, creates PRs, and merges — all in a closed loop. Works with any JS/TS project. metadata: {"clawdbot":{"emoji":"🤖","requires":{"anyBins":["node","git","gh"],"anyEnv":["OPENAI_API_KEY","ANTHROPIC_API_KEY"]}}} --- OpenTangl Capability contract not published. No trust telemetry is available yet. Last updated 4/15/2026.

No verified compatibility signals

Trust score

Unknown

Compatibility

OpenClaw

Freshness

Feb 25, 2026

Vendor

Openclaw

Artifacts

0

Benchmarks

0

Last release

Unpublished

Install & run

Setup Snapshot

clawhub skill install skills:8co:opentangl
  1. 1

    Setup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.

  2. 2

    Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.

Evidence & Timeline

Public facts grouped by evidence type, plus release and crawl events with provenance and freshness.

Verifiededitorial-content

Public facts

Evidence Ledger

Vendor (1)

Vendor

Openclaw

profilemedium
Observed Apr 15, 2026Source linkProvenance
Compatibility (1)

Protocol compatibility

OpenClaw

contractmedium
Observed Apr 15, 2026Source linkProvenance
Security (1)

Handshake status

UNKNOWN

trustmedium
Observed unknownSource linkProvenance
Integration (1)

Crawlable docs

6 indexed pages on the official domain

search_documentmedium
Observed Apr 15, 2026Source linkProvenance

Artifacts & Docs

Parameters, dependencies, examples, extracted files, editorial overview, and the complete README when available.

Self-declaredCLAWHUB

Captured outputs

Artifacts Archive

Extracted files

0

Examples

6

Snippets

0

Languages

typescript

Parameters

Executable Examples

bash

git clone https://github.com/8co/opentangl.git
cd opentangl
npm install

yaml

projects:
  - id: my-app                          # Short kebab-case ID (used in CLI flags)
    name: my-app                        # Human-readable name
    path: ../my-app                     # Relative path from OpenTangl root to the project
    type: react-vite                    # Project type (see below)
    description: React dashboard app    # One-line description
    scan_dirs:
      - src                             # Directories containing source code
    skip_patterns:
      - node_modules
      - dist
      - "*.test.*"
    verify:                             # Commands that must pass before committing
      - command: npm
        args: [run, build]
    package_manager: npm                # npm | yarn | pnpm
    merge:
      target_branch: main               # Branch PRs merge into

yaml

- id: my-api
    environment: my-product
    # ...
  - id: my-frontend
    environment: my-product
    # ...

markdown

### Active Initiatives

1. **{Priority}** — {What and why}
   - Status: not started

text

OPENAI_API_KEY=sk-...
OPENAI_MODEL=gpt-4o
DEFAULT_AGENT=openai

text

ANTHROPIC_API_KEY=sk-ant-...
ANTHROPIC_MODEL=claude-sonnet-4-20250514
DEFAULT_AGENT=anthropic

Editorial read

Docs & README

Docs source

CLAWHUB

Editorial quality

ready

Set up and run OpenTangl — an autonomous AI development engine that scans your codebase, proposes tasks aligned with a product vision, writes code, runs verification, creates PRs, and merges — all in a closed loop. Works with any JS/TS project. --- name: opentangl description: Set up and run OpenTangl — an autonomous AI development engine that scans your codebase, proposes tasks aligned with a product vision, writes code, runs verification, creates PRs, and merges — all in a closed loop. Works with any JS/TS project. metadata: {"clawdbot":{"emoji":"🤖","requires":{"anyBins":["node","git","gh"],"anyEnv":["OPENAI_API_KEY","ANTHROPIC_API_KEY"]}}} --- OpenTangl

Full README

name: opentangl description: Set up and run OpenTangl — an autonomous AI development engine that scans your codebase, proposes tasks aligned with a product vision, writes code, runs verification, creates PRs, and merges — all in a closed loop. Works with any JS/TS project. metadata: {"clawdbot":{"emoji":"🤖","requires":{"anyBins":["node","git","gh"],"anyEnv":["OPENAI_API_KEY","ANTHROPIC_API_KEY"]}}}

OpenTangl

Set up a self-driving development loop for any JavaScript/TypeScript project. OpenTangl reads a product vision, proposes tasks, writes code, verifies it builds, creates PRs, reviews them with an LLM, and merges — autonomously.

Prerequisites

Before starting, verify these are installed. Check silently — only mention what's missing.

  • Node.js ≥ 18 (node --version)
  • git configured with a remote (git --version)
  • GitHub CLI authenticated (gh auth status) — needed for PR creation and merging
  • An LLM API key — OpenAI (OPENAI_API_KEY) or Anthropic (ANTHROPIC_API_KEY)

If anything is missing, tell the user exactly how to install it and stop until resolved.

Step 1 — Clone OpenTangl

git clone https://github.com/8co/opentangl.git
cd opentangl
npm install

If the user already has OpenTangl cloned, skip to Step 2.

Step 2 — Determine the Target Project

Ask the user:

Are you (a) building something new from scratch, (b) improving an existing project, or (c) not sure?

Path A: New Project

  1. Ask: "What do you want to build?" Get a 2-3 sentence description.
  2. Ask: "What type of app?" — Frontend (React/Vite, Next.js), API/Backend (Serverless, Express), or Full-stack (both).
  3. Scaffold the project using the appropriate tool:
    • React + Vite: npm create vite@latest {name} -- --template react-ts
    • Next.js: npx create-next-app@latest {name} --typescript
    • Serverless: npx serverless create --template aws-nodejs --path {name}
    • Express: create package.json + src/index.ts manually
  4. Initialize git: git init && git add . && git commit -m "Initial scaffold"
  5. Ask the user to confirm before creating a GitHub repo: gh repo create {name} --public --source . --push
  6. Note the path to the new project relative to the OpenTangl root.

Path B: Existing Project

  1. Ask: "Where is your project?" Accept a path. If they say "this directory," use cwd.
  2. Auto-detect the project by scanning its root:
    • Type: tsconfig.json → TypeScript, vite.config.ts → Vite, next.config.* → Next.js, serverless.yml → Serverless
    • Package manager: package-lock.json → npm, yarn.lock → yarn, pnpm-lock.yaml → pnpm
    • Build/test commands: Read package.json scripts for build, test, lint, typecheck
    • Source dirs: Default to src/ if it exists
    • Target branch: Check git symbolic-ref refs/remotes/origin/HEAD or look for main vs master
  3. Present what you detected and confirm with the user.
  4. Ask: "Are there other repos that are part of this same product?" If yes, repeat detection for each.

Path C: Not Sure

Ask the user to provide the path to their project directory. Once provided, check git status and read config files in that directory, then route to Path A or B.

Step 3 — Generate projects.yaml

Create projects.yaml in the OpenTangl root directory. Each project entry needs:

projects:
  - id: my-app                          # Short kebab-case ID (used in CLI flags)
    name: my-app                        # Human-readable name
    path: ../my-app                     # Relative path from OpenTangl root to the project
    type: react-vite                    # Project type (see below)
    description: React dashboard app    # One-line description
    scan_dirs:
      - src                             # Directories containing source code
    skip_patterns:
      - node_modules
      - dist
      - "*.test.*"
    verify:                             # Commands that must pass before committing
      - command: npm
        args: [run, build]
    package_manager: npm                # npm | yarn | pnpm
    merge:
      target_branch: main               # Branch PRs merge into

Supported types: typescript-node, serverless-js, serverless-ts, react-vite, react-next, express (or any descriptive string).

For multi-project setups, add an environment field to group related projects under a shared vision:

  - id: my-api
    environment: my-product
    # ...
  - id: my-frontend
    environment: my-product
    # ...

Step 4 — Create the Vision Doc

Create docs/environments/{environment}/product-vision.md (use the project id as environment name for single projects, or the environment field for multi-project).

The vision doc has two sections:

Origin & Direction (human-authored, never modified by OpenTangl)

Ask the user to describe:

  • What This Is — 2-3 sentences about the project
  • Where It's Going — long-term direction, 6-12 months out
  • What Matters Most — 3-5 principles guiding decisions

Current Priorities (maintained by OpenTangl after each run)

Ask: "What are the first 3-5 things you want built or improved?"

Write them as Active Initiatives:

### Active Initiatives

1. **{Priority}** — {What and why}
   - Status: not started

If the user isn't sure, offer to scan the codebase and suggest priorities.

Step 5 — Configure the LLM

Create .env in the OpenTangl root:

For OpenAI:

OPENAI_API_KEY=sk-...
OPENAI_MODEL=gpt-4o
DEFAULT_AGENT=openai

For Anthropic (Claude):

ANTHROPIC_API_KEY=sk-ant-...
ANTHROPIC_MODEL=claude-sonnet-4-20250514
DEFAULT_AGENT=anthropic

Both providers can be configured. The user switches with --agent openai|anthropic at runtime.

Step 6 — First Run

Initialize an empty task queue:

mkdir -p tasks
echo "tasks: []" > tasks/queue.yaml

Show the user the command and confirm before running. The autopilot will create branches, commits, and PRs on their behalf:

npx tsx src/cli.ts autopilot --projects {project-id} --cycles 1 --feature-ratio 0.8

For multi-project:

npx tsx src/cli.ts autopilot --projects {api-id},{ui-id} --cycles 1 --feature-ratio 0.8

What happens during a cycle:

  1. OpenTangl reads the vision doc and scans the codebase
  2. It proposes tasks aligned with the vision
  3. It executes each task autonomously — writes code, runs verification
  4. It creates PRs, reviews them with the LLM, merges if clean
  5. It updates the vision doc with progress

After the first run, review the results with the user. Check the sanity check output and the updated vision doc.

Ongoing Usage

Run autopilot whenever development cycles are needed:

npx tsx src/cli.ts autopilot --projects {ids} --cycles {n} --feature-ratio 0.8

Key flags:

  • --cycles N — how many propose-execute loops to run
  • --feature-ratio 0.8 — 80% features, 20% maintenance/testing (adjustable)
  • --agent openai|anthropic — override the default LLM provider

Background execution (keeps running after terminal closes):

nohup caffeinate -dims npx --yes tsx src/cli.ts autopilot --projects {ids} --cycles 3 --feature-ratio 0.8 > /tmp/opentangl.log 2>&1 &

Monitor with: tail -f /tmp/opentangl.log

Troubleshooting

  • "No pending tasks" — The queue is empty. Run autopilot to have the LLM propose tasks, or add more specific priorities to the vision doc.
  • Build failures — OpenTangl retries up to 3 times with error feedback. If all attempts fail, the task is marked failed and skipped.
  • Escalated PRs — The LLM reviewer flagged critical concerns. Check the GitHub issue it created for details.
  • "OPENAI_API_KEY is required" — Create .env and add your key (see Step 5).
  • Merge conflicts — OpenTangl has a built-in conflict resolver. If it can't resolve automatically, the PR is escalated for human review.

API & Reliability

Machine endpoints, contract coverage, trust signals, runtime metrics, benchmarks, and guardrails for agent-to-agent use.

MissingCLAWHUB

Machine interfaces

Contract & API

Contract coverage

Status

missing

Auth

None

Streaming

No

Data region

Unspecified

Protocol support

OpenClaw: self-declared

Requires: none

Forbidden: none

Guardrails

Operational confidence: low

No positive guardrails captured.
Invocation examples
curl -s "https://xpersona.co/api/v1/agents/clawhub-skills-8co-opentangl/snapshot"
curl -s "https://xpersona.co/api/v1/agents/clawhub-skills-8co-opentangl/contract"
curl -s "https://xpersona.co/api/v1/agents/clawhub-skills-8co-opentangl/trust"

Operational fit

Reliability & Benchmarks

Trust signals

Handshake

UNKNOWN

Confidence

unknown

Attempts 30d

unknown

Fallback rate

unknown

Runtime metrics

Observed P50

unknown

Observed P95

unknown

Rate limit

unknown

Estimated cost

unknown

Do not use if

Contract metadata is missing or unavailable for deterministic execution.
No benchmark suites or observed failure patterns are available.

Machine Appendix

Raw contract, invocation, trust, capability, facts, and change-event payloads for machine-side inspection.

MissingCLAWHUB

Contract JSON

{
  "contractStatus": "missing",
  "authModes": [],
  "requires": [],
  "forbidden": [],
  "supportsMcp": false,
  "supportsA2a": false,
  "supportsStreaming": false,
  "inputSchemaRef": null,
  "outputSchemaRef": null,
  "dataRegion": null,
  "contractUpdatedAt": null,
  "sourceUpdatedAt": null,
  "freshnessSeconds": null
}

Invocation Guide

{
  "preferredApi": {
    "snapshotUrl": "https://xpersona.co/api/v1/agents/clawhub-skills-8co-opentangl/snapshot",
    "contractUrl": "https://xpersona.co/api/v1/agents/clawhub-skills-8co-opentangl/contract",
    "trustUrl": "https://xpersona.co/api/v1/agents/clawhub-skills-8co-opentangl/trust"
  },
  "curlExamples": [
    "curl -s \"https://xpersona.co/api/v1/agents/clawhub-skills-8co-opentangl/snapshot\"",
    "curl -s \"https://xpersona.co/api/v1/agents/clawhub-skills-8co-opentangl/contract\"",
    "curl -s \"https://xpersona.co/api/v1/agents/clawhub-skills-8co-opentangl/trust\""
  ],
  "jsonRequestTemplate": {
    "query": "summarize this repo",
    "constraints": {
      "maxLatencyMs": 2000,
      "protocolPreference": [
        "OPENCLEW"
      ]
    }
  },
  "jsonResponseTemplate": {
    "ok": true,
    "result": {
      "summary": "...",
      "confidence": 0.9
    },
    "meta": {
      "source": "CLAWHUB",
      "generatedAt": "2026-04-17T00:14:16.513Z"
    }
  },
  "retryPolicy": {
    "maxAttempts": 3,
    "backoffMs": [
      500,
      1500,
      3500
    ],
    "retryableConditions": [
      "HTTP_429",
      "HTTP_503",
      "NETWORK_TIMEOUT"
    ]
  }
}

Trust JSON

{
  "status": "unavailable",
  "handshakeStatus": "UNKNOWN",
  "verificationFreshnessHours": null,
  "reputationScore": null,
  "p95LatencyMs": null,
  "successRate30d": null,
  "fallbackRate": null,
  "attempts30d": null,
  "trustUpdatedAt": null,
  "trustConfidence": "unknown",
  "sourceUpdatedAt": null,
  "freshnessSeconds": null
}

Capability Matrix

{
  "rows": [
    {
      "key": "OPENCLEW",
      "type": "protocol",
      "support": "unknown",
      "confidenceSource": "profile",
      "notes": "Listed on profile"
    },
    {
      "key": "the",
      "type": "capability",
      "support": "supported",
      "confidenceSource": "profile",
      "notes": "Declared in agent profile metadata"
    },
    {
      "key": "be",
      "type": "capability",
      "support": "supported",
      "confidenceSource": "profile",
      "notes": "Declared in agent profile metadata"
    }
  ],
  "flattenedTokens": "protocol:OPENCLEW|unknown|profile capability:the|supported|profile capability:be|supported|profile"
}

Facts JSON

[
  {
    "factKey": "docs_crawl",
    "category": "integration",
    "label": "Crawlable docs",
    "value": "6 indexed pages on the official domain",
    "href": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
    "sourceUrl": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
    "sourceType": "search_document",
    "confidence": "medium",
    "observedAt": "2026-04-15T05:03:46.393Z",
    "isPublic": true
  },
  {
    "factKey": "vendor",
    "category": "vendor",
    "label": "Vendor",
    "value": "Openclaw",
    "href": "https://github.com/openclaw/skills/tree/main/skills/8co/opentangl",
    "sourceUrl": "https://github.com/openclaw/skills/tree/main/skills/8co/opentangl",
    "sourceType": "profile",
    "confidence": "medium",
    "observedAt": "2026-04-15T00:45:39.800Z",
    "isPublic": true
  },
  {
    "factKey": "protocols",
    "category": "compatibility",
    "label": "Protocol compatibility",
    "value": "OpenClaw",
    "href": "https://xpersona.co/api/v1/agents/clawhub-skills-8co-opentangl/contract",
    "sourceUrl": "https://xpersona.co/api/v1/agents/clawhub-skills-8co-opentangl/contract",
    "sourceType": "contract",
    "confidence": "medium",
    "observedAt": "2026-04-15T00:45:39.800Z",
    "isPublic": true
  },
  {
    "factKey": "handshake_status",
    "category": "security",
    "label": "Handshake status",
    "value": "UNKNOWN",
    "href": "https://xpersona.co/api/v1/agents/clawhub-skills-8co-opentangl/trust",
    "sourceUrl": "https://xpersona.co/api/v1/agents/clawhub-skills-8co-opentangl/trust",
    "sourceType": "trust",
    "confidence": "medium",
    "observedAt": null,
    "isPublic": true
  }
]

Change Events JSON

[
  {
    "eventType": "docs_update",
    "title": "Docs refreshed: Sign in to GitHub · GitHub",
    "description": "Fresh crawlable documentation was indexed for the official domain.",
    "href": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
    "sourceUrl": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
    "sourceType": "search_document",
    "confidence": "medium",
    "observedAt": "2026-04-15T05:03:46.393Z",
    "isPublic": true
  }
]

Sponsored

Ads related to opentangl and adjacent AI workflows.