Skip to content

v0.1.0 — Initial Release

Choose a tag to compare

@shreyas-lyzr shreyas-lyzr released this 04 Mar 12:31
· 117 commits to main since this release

Gitclaw v0.1.0

A universal git-native AI agent framework.

Your agent lives inside a git repo — identity, rules, memory, tools, and skills are all version-controlled files.

Highlights

CLI + SDK

  • CLI with REPL and single-shot (--prompt) modes
  • Programmatic SDKquery() returns an AsyncGenerator<GCMessage> for streaming agent events
  • tool() helper — define custom tools the agent can call

Git-Native Architecture

  • agent.yaml for model, tools, and runtime config
  • SOUL.md / RULES.md for identity and constraints
  • memory/MEMORY.md — git-committed memory with full history
  • tools/*.yaml — declarative tool definitions with script implementations
  • skills/ — composable skill modules

Multi-Provider LLM Support

Works with OpenAI, Anthropic, Google, xAI, Groq, Mistral, and more via pi-ai.

Lifecycle Hooks

Script-based (hooks/hooks.yaml) and programmatic hooks for:

  • onSessionStart — gate session creation
  • preToolUse — allow, block, or modify tool calls
  • postResponse — post-processing
  • onError — error handling

Agent Composition

  • Inheritance — extend base agents via extends
  • Sub-agents — delegate tasks to child agents
  • Dependencies — mount shared tool/skill repos

Compliance & Audit

  • Risk levels, human-in-the-loop, regulatory frameworks
  • JSONL audit logging with full tool invocation traces

Quick Start

npm install gitclaw
import { query, tool } from "gitclaw";

const greet = tool("greet", "Greet someone", {
  properties: { name: { type: "string" } },
  required: ["name"],
}, async (args) => `Hello, ${args.name}!`);

for await (const msg of query({
  prompt: "Greet the user",
  tools: [greet],
  model: "openai:gpt-4o-mini",
})) {
  if (msg.type === "delta") process.stdout.write(msg.content);
}

Requirements

  • Node.js >= 20
  • A valid LLM API key (OpenAI, Anthropic, etc.)