ToolCTRL Labs

Interne Entwicklungsorganisation für Produkte & Demos

toolcontroller (2.0.0)

Published 2026-04-10 09:54:36 +00:00 by gitea-admin

Installation

registry=https://git.hg-int.dev/api/packages/toolctrl-labs/npm/
npm install toolcontroller@2.0.0
"toolcontroller": "2.0.0"

About this package

<p align="center"> <img src="web/public/toolctrl-logo.png" alt="ToolCTRL" width="140" /> </p>

ToolCTRL

ToolController

Die autonome Coding-Plattform, die deine gesamte Dev-Toolchain ersetzt.
Ein Befehl. Weggehen. Wiederkommen. Projekt ist gebaut.

tc — von ToolCTRL Labs


Was ist das?

ToolController ist eine selbst-gehostete Coding-Orchestrierungsplattform, die kleinen Teams die Schlagkraft einer 10-Personen-Engineering-Abteilung gibt. Sie verbindet KI-Agenten direkt mit deiner Codebase, deinem Git-Server und deiner Infrastruktur — und lässt sie autonom planen, ausführen, verifizieren und shippen.

Kein Chatbot. Kein Code-Assistent. Eine Execution Engine, die ein Ziel entgegennimmt und funktionierenden Code liefert — getestet und committed.

Ein Binary. Ein Befehl. Echte Ergebnisse.

tc                          # Web-UI starten (Standard)
tc --tui                    # Terminal-UI
tc headless "bau die API"   # CI/CD-Modus — kein UI, nur Ergebnisse

Warum nicht einfach X benutzen?

GSD2 — der nackte Motor ohne Karosserie

GSD2 ist der Open-Source-Agent von dem ToolController den Kern übernommen hat. Und das war's dann auch schon mit den Gemeinsamkeiten. GSD2 ist ein CLI-Tool für Einzelkämpfer. Kein Login, kein Multi-User, kein Web-UI. Jeder kocht seine eigene .env-Suppe, Provider-Bloat mit 10+ Anbietern von denen die Hälfte keiner braucht, und wenn dein Kollege am gleichen Repo arbeiten will — viel Glück.

GSD2 ToolController
Wer nutzt es? Ein Typ alleine im Terminal Ganze Teams parallel
Auth Keine. Jeder ist root. Login, RBAC, Gitea-Anbindung
Keys Jeder pflegt eigene .env Admin-Vault, zentral, sicher
Git Du machst alles selbst Auto-Branch pro User, PR-Workflow
UI Nur TUI Web-UI + TUI
Provider 10+ Stück, Hälfte broken 5 kuratierte die funktionieren
Deployment Nur lokal Server mit PostgreSQL, Multi-User
Repos Nur pwd Multi-Repo via Gitea

GSD2 ist ein Motor auf einem Holzbock. ToolController ist das fertige Fahrzeug.

BMAD — Rollenspiel ohne Hände

BMAD (Build Manage Architect Deploy) klingt erstmal beeindruckend. Dann schaut man rein und merkt: Es ist eine Markdown-Sammlung. Rollen, Personas, Workflow-Templates — alles als Textdateien, die man in Claude oder ChatGPT reinkopiert und hofft, dass der Agent sich dran hält.

Kein Runtime. Keine Tools. Kein Git. Keine Verifikation. Der Agent "plant" in einer Chat-Bubble und du darfst den Output selbst in Dateien kopieren. Wenn was schiefgeht, fängst du von vorne an, weil Sessions nicht persistiert werden.

BMAD ToolController
Was ist es? Prompt-Sammlung in Markdown Plattform mit echtem Runtime
Ausführung Du kopierst Output in Dateien Agent schreibt direkt ins Repo
Tools Keine. Nur Text. Bash, Read, Write, Edit, Grep, Find + 20 Extensions
Git Mach selbst Automatisch — Branch, Commit, PR
Verifikation Du liest und hoffst Agent verifiziert seine eigene Arbeit
Sessions Weg nach Browser-Refresh Persistiert, Resume, History
Multi-User Nein Ja, mit Rollen und isolierten Branches

BMAD gibt dem Agenten eine Visitenkarte. ToolController gibt ihm einen Arbeitsplatz mit Werkzeug.

Claude Code / Cursor / Copilot — teuer, fremdgehostet, limitiert

Diese Tools haben einen gemeinsamen Nenner: Du gibst deine Daten an Dritte, zahlst Pro-Seat-Lizenzen, bist an einen Anbieter gekettet, und hast null Kontrolle über die Infrastruktur.

Cursor? Schick, aber dein Code geht durch deren Server. Claude Code? An Anthropic gebunden, ein Modell, kein Team-Feature. GitHub Copilot Workspace? Microsoft entscheidet was du darfst und was nicht. Keines dieser Tools lässt dich Repos zentral verwalten, Keys zentral speichern, oder User mit Rollen versehen.

Claude Code / Cursor ToolController
Deine Daten Bei denen. Cloud. Bei dir. Dein Server.
Multi-User Einzelplatz Team mit Admin-Panel
Modelle Nimm was wir haben 5 Provider, frei wechselbar
Kosten $20-40/Monat/Seat Nur API-Kosten. Keine Plattformgebühr.
Git Basic Auto-Branch + PR pro User
Admin Gibt's nicht Key-Vault, RBAC, Audit-Trail
Erweiterbar Kaum 20+ Extensions, MCP-Server, RPC
Offline Vergiss es Ollama = komplett lokal, zero Cloud

Die anderen sind SaaS-Produkte bei denen du Mieter bist. ToolController ist dein Eigentum.

So funktioniert's

┌─────────────┐     ┌──────────────────┐     ┌─────────────────┐
│  Web-UI      │────▶│  Agent Engine     │────▶│  Deine Codebase  │
│  (Next.js)   │     │  (LLM + Tools)   │     │  (Git-Repos)     │
└─────────────┘     └──────────────────┘     └─────────────────┘
       │                     │                        │
       │              ┌──────┴──────┐                 │
       │              │             │                 │
       ▼              ▼             ▼                 ▼
  ┌─────────┐  ┌───────────┐ ┌──────────┐    ┌────────────┐
  │ Auth &   │  │ Provider   │ │ Tool     │    │ Branch pro │
  │ RBAC     │  │ Router     │ │ Suite    │    │ User + PR  │
  │ (PG)     │  │ (5 LLMs)  │ │ (12+)    │    │ Workflow   │
  └─────────┘  └───────────┘ └──────────┘    └────────────┘

Der Agent-Loop

  1. Du beschreibst was du willst — im Web-UI, TUI oder Headless-Modus
  2. Der Agent plant — zerlegt die Aufgabe in Schritte, identifiziert Dateien, mappt Abhängigkeiten
  3. Der Agent führt aus — schreibt Code, führt Befehle aus, liest Output, iteriert
  4. Der Agent verifiziert — prüft seine eigene Arbeit gegen das Ziel, führt Tests aus
  5. Der Agent committed — saubere Git-History auf deinem Branch, bereit für PR

Der Agent hat echte Tools: Bash, Read, Write, Edit, Grep, Find, Ls — er halluziniert keine Dateiinhalte, er liest sie. Er rät nicht bei Fehlern, er führt den Code aus.

KI-Provider

ToolController ist nicht an ein Modell gebunden. Frei wechselbar:

Provider Modelle Einsatz
Anthropic Claude Opus, Sonnet, Haiku Primärer Coding-Agent
OpenAI GPT-4.1, o3, o4-mini Alternatives Reasoning
Ollama Llama, Qwen, DeepSeek, etc. Lokal/privat, kostenlos
OpenRouter 200+ Modelle Zugriff auf alles
Claude Code Via lokales CLI OAuth-basiert, kein API-Key nötig

Alle Keys werden in einem zentralen Admin-Vault gespeichert — User sehen oder verwalten keine API-Keys.

Plattform-Features

Multi-User & Zugriffskontrolle

  • Login-geschütztes Web-UI — kein anonymer Zugang, Admin erstellt Accounts
  • Rollenbasierter Zugriff — Admin / User / Viewer mit Berechtigungsgrenzen
  • Gitea-Integration — jeder Account wird an eine git.tool-ctrl.de Identität gebunden
  • Branches pro User — paralleles Arbeiten ohne sich ins Gehege zu kommen

Repository-Verwaltung

  • Repos klonen von deinem Gitea-Server direkt im Admin-Panel
  • Sync auf Knopfdruck — neueste Änderungen mit einem Klick ziehen
  • Branch-Isolation — jeder User bekommt seinen eigenen Branch pro Aufgabe
  • PR-Workflow — Merge nach Main über Pull Requests, nicht direkte Pushes

Admin-Panel

  • User-Verwaltung — Accounts erstellen, Rollen zuweisen, Gitea-Usernamen verknüpfen
  • API-Key-Vault — zentralisierte Credential-Speicherung für alle Provider
  • Repository-Config — Repos hinzufügen, syncen und verwalten an einem Ort

Agent-Fähigkeiten

  • Session-Persistenz — da weitermachen wo du aufgehört hast, Session-History mit Suche
  • Worktree-Isolation — Agenten in Git-Worktrees für konfliktfreies paralleles Arbeiten
  • Extension-System — Browser-Tools, Background Shell, Subagenten, Voice, Suche
  • MCP-Server-Modus — ToolController als Tools für externe Agenten bereitstellen
  • RPC-Modus — JSON-RPC über stdin/stdout für programmatische Steuerung
  • Headless-Modus — CI/CD-ready, Tasks reinpipen, strukturierten Output bekommen

Sicherheit & Guardrails

  • Approval Gates — Hochrisiko-Operationen pausieren für menschliche Bestätigung
  • Quality Checkpoints — konfigurierbare Verifikation vor Commits
  • Audit Trail — jeder Tool-Call, jede LLM-Interaktion, jeder Credential-Zugriff geloggt
  • Token-Tracking — pro-Session Kosten- und Nutzungsmetriken mit Provider-Aufschlüsselung
  • Key Rotation — Credential-Lifecycle-Management mit Health Signals

Architektur

toolcontroller/
├── bin/tc                 # CLI-Einstiegspunkt
├── tc-engine/             # Agent Engine (Loop, Streaming, Tools, Sessions)
│   ├── cli.ts             # CLI-Befehlsrouter
│   ├── loader.ts          # Bootstrap & Umgebungssetup
│   ├── web-mode.ts        # Web-Server-Launcher
│   └── resources/         # Extensions, Prompts, Skills, Agenten
├── packages/
│   ├── pi-ai/             # KI-Provider-Abstraktion (5 Provider)
│   ├── pi-agent-core/     # Agent-Loop, Tool-Ausführung, Session-Management
│   ├── pi-coding-agent/   # Coding-spezifischer Agent mit Resource-Loading
│   ├── pi-tui/            # Terminal-UI (Ink-basiert)
│   ├── native/            # Rust N-API Bindings (Grep, Parser, Git)
│   ├── mcp-server/        # MCP-Server für externe Agent-Integration
│   ├── rpc-client/        # Standalone RPC-Client SDK
│   └── daemon/            # Hintergrundprozess für Monitoring
├── src/                   # ToolController Business Layer
│   ├── core/              # Auth, RBAC, Audit, Keys, Guardrails, Workflow
│   ├── server/            # PostgreSQL, Server-Auth, Migrationen
│   └── web/               # Web-Service-Layer (Bridge, Settings, etc.)
└── web/                   # Next.js 16 Web-UI
    ├── app/               # Seiten: Login, Dashboard, Admin, Workspace
    ├── components/tc/     # UI-Komponenten (Dashboard, Chat, Files, Logo)
    └── lib/               # Auth-Context, Workspace-Store, Utilities

Schnellstart

# Voraussetzungen: Node.js >= 22, Git

# Klonen
git clone git@git.tool-ctrl.de:toolctrl-labs/ToolController.git
cd ToolController

# Abhängigkeiten installieren
npm install
cd web && npm install && cd ..

# Starten
./bin/tc              # Web-UI (Standard)
./bin/tc --tui        # Terminal-UI
./bin/tc --version    # 2.0.0-dev

Server-Modus (Multi-User)

# Benötigt PostgreSQL
export __TC_SERVER=true
export TC_DB_HOST=localhost
export TC_DB_PORT=5432
export TC_DB_NAME=toolcontroller
export TC_DB_USER=tc
export TC_DB_PASSWORD=secret

# Starten
./bin/tc --web

Der erste im Admin-Panel erstellte User wird automatisch Admin. Alle weiteren Accounts werden von Admins provisioniert.

Tech-Stack

Schicht Technologie
Runtime Node.js 22+ (ESM, Type Stripping)
KI-Engine Custom Agent-Loop mit Streaming und paralleler Tool-Ausführung
Web-UI Next.js 16, React 19, Tailwind CSS 4, Motion
Datenbank PostgreSQL (Server-Modus), SQLite (Lokal-Modus)
Native Rust via N-API (Grep, Parser, Git-Operationen)
CLI TypeScript, tsx Loader
Auth Session-Tokens, RBAC (Admin/User/Viewer), Cookie + Bearer

Zahlen

  • 574K Zeilen Code
  • 2.600+ Dateien
  • 314 Commits
  • 8 Core-Packages
  • 5 KI-Provider
  • 12+ Agent-Tools
  • 20+ Extensions

Gebaut von ToolCTRL Labs
Schneller shippen. Weniger breaken.

Dependencies

Dependencies

ID Version
@anthropic-ai/sdk ^0.73.0
@google/genai ^1.49.0
@mariozechner/jiti ^2.6.5
@modelcontextprotocol/sdk ^1.29.0
@playwright/test ^1.59.1
@silvia-odwyer/photon-node ^0.3.4
@sinclair/typebox ^0.34.49
ajv ^8.18.0
ajv-formats ^3.0.1
better-sqlite3 ^12.8.0
bullmq ^5.73.3
chalk ^5.6.2
chokidar ^5.0.0
diff ^8.0.4
express ^5.2.1
extract-zip ^2.0.1
file-type ^22.0.0
get-east-asian-width ^1.5.0
glob ^13.0.6
hosted-git-info ^9.0.2
ignore ^7.0.5
ioredis ^5.10.1
keytar ^7.9.0
marked ^18.0.0
mime-types ^3.0.2
minimatch ^10.2.5
oclif ^4.23.0
open ^10.2.0
openai ^6.34.0
openid-client ^6.8.2
pg ^8.20.0
playwright ^1.59.1
proper-lockfile ^4.1.2
proxy-agent ^6.5.0
sql.js ^1.14.1
strip-ansi ^7.2.0
undici ^7.24.7
ws ^8.20.0
yaml ^2.8.3
zod ^4.3.6
zod-to-json-schema ^3.25.2

Development Dependencies

ID Version
@types/better-sqlite3 ^7.6.13
@types/express ^5.0.6
@types/node ^24.0.0
@types/pg ^8.20.0
@types/supertest ^7.2.0
@types/ws ^8.18.1
discord.js ^14.26.2
supertest ^7.2.2
tsx ^4.21.0
typescript ^6.0.2
vitest ^4.1.3
Details
npm
2026-04-10 09:54:36 +00:00
0
latest
3.1 MiB
Assets (1)
Versions (1) View all
2.0.0 2026-04-10