Compare commits

..

7 Commits

Author SHA1 Message Date
argenis de la rosa
3e264ddb98 fix(tui): add --session arg, crossterm feature, and tab tests
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-17 18:02:09 -04:00
argenis de la rosa
f12ab50146 fix(tui): resolve clippy warnings for wildcard imports and match arms
Replace wildcard widget imports with explicit imports to satisfy
clippy::wildcard_imports. Merge identical match arms for quit
keybindings and allow unused_async on the run method (async is
needed for the caller contract but not yet used internally).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-17 17:54:51 -04:00
argenis de la rosa
735e1677f5 feat(tui): add logs and config tabs, wire render loop
Implement the Logs tab with a scrollable list viewer that displays
log entries with level-colored prefixes (SSE stream placeholder).
Add the Config tab with a TOML display area and help bar showing
keyboard shortcuts for opening $EDITOR and refreshing config.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-17 17:54:51 -04:00
argenis de la rosa
15f2c5f239 feat(tui): add chat tab with message display
Implement the Chat tab with a scrollable message area showing
system/user/assistant messages and a text input field. Displays
a placeholder prompt when not connected to the gateway.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-17 17:54:51 -04:00
argenis de la rosa
dd2544c736 feat(tui): add dashboard and channels tabs
Implement the Dashboard tab with status cards (gateway, provider,
memory, uptime), a memory usage gauge, and an info panel. Add the
Channels tab with a table view showing channel name, status, type,
and last message columns.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-17 17:54:51 -04:00
argenis de la rosa
955a836774 feat(tui): add theme and gateway client
Add GatewayHttpClient for REST API calls (status, health, tools,
memory, cron, config) and GatewayWsClient for real-time WebSocket
chat communication between the TUI and the gateway server.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-17 17:54:51 -04:00
argenis de la rosa
407dbcbdd7 feat(tui): add TUI dependencies, feature flag, and module skeleton
Add ratatui, crossterm, and tui-textarea as optional dependencies behind
the `tui` feature flag. Create the `src/tui/` module with ActiveTab enum,
TuiApp struct with event loop, and placeholder tab renderers. Wire up
the `zeroclaw tui` CLI subcommand (cfg-gated) in main.rs.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-17 17:54:50 -04:00
416 changed files with 11731 additions and 93957 deletions

View File

@ -1,12 +0,0 @@
# cargo-audit configuration
# https://rustsec.org/
[advisories]
ignore = [
# wasmtime vulns via extism 1.13.0 — no upstream fix; plugins feature-gated
"RUSTSEC-2026-0006", # wasmtime f64.copysign segfault on x86-64
"RUSTSEC-2026-0020", # WASI guest-controlled resource exhaustion
"RUSTSEC-2026-0021", # WASI http fields panic
# instant crate unmaintained — transitive dep via nostr; no upstream fix
"RUSTSEC-2024-0384",
]

View File

@ -2,7 +2,7 @@
rustflags = ["-C", "link-arg=-static"]
[target.aarch64-unknown-linux-musl]
rustflags = ["-C", "link-arg=-static", "-C", "link-arg=-Wl,-z,stack-size=8388608"]
rustflags = ["-C", "link-arg=-static"]
# Android targets (NDK toolchain)
[target.armv7-linux-androideabi]
@ -10,4 +10,3 @@ linker = "armv7a-linux-androideabi21-clang"
[target.aarch64-linux-android]
linker = "aarch64-linux-android21-clang"
rustflags = ["-C", "link-arg=-Wl,-z,stack-size=8388608"]

View File

@ -65,6 +65,10 @@ LICENSE
coverage
lcov.info
# Firmware and hardware crates (not needed for Docker runtime)
firmware/
crates/robot-kit/
# Application and script directories (not needed for Docker runtime)
apps/
python/

View File

@ -1,44 +1,3 @@
# EditorConfig is awesome: https://EditorConfig.org
# top-most EditorConfig file
root = true
# All files
[*]
indent_style = space
indent_size = 2
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true
# Rust files - match rustfmt.toml
[*.rs]
indent_size = 4
max_line_length = 100
# Markdown files
[*.md]
trim_trailing_whitespace = false
max_line_length = 80
# TOML files
[*.toml]
indent_size = 2
# YAML files
[*.{yml,yaml}]
indent_size = 2
# Python files
[*.py]
indent_size = 4
max_line_length = 100
# Shell scripts
[*.{sh,bash}]
indent_size = 2
# JSON files
[*.json]
indent_size = 2

View File

@ -118,7 +118,3 @@ PROVIDER=openrouter
# Optional: Brave Search (requires API key from https://brave.com/search/api)
# WEB_SEARCH_PROVIDER=brave
# BRAVE_API_KEY=your-brave-search-api-key
#
# Optional: SearXNG (self-hosted, requires instance URL)
# WEB_SEARCH_PROVIDER=searxng
# SEARXNG_INSTANCE_URL=https://searx.example.com

60
.gitattributes vendored
View File

@ -1,61 +1 @@
# Git attributes for ZeroClaw
# https://git-scm.com/docs/gitattributes
# Auto detect text files and perform LF normalization
* text=auto
# Source code
*.rs text eol=lf linguist-language=Rust
*.toml text eol=lf linguist-language=TOML
*.py text eol=lf linguist-language=Python
*.js text eol=lf linguist-language=JavaScript
*.ts text eol=lf linguist-language=TypeScript
*.html text eol=lf linguist-language=HTML
*.css text eol=lf linguist-language=CSS
*.scss text eol=lf linguist-language=SCSS
*.json text eol=lf linguist-language=JSON
*.yaml text eol=lf linguist-language=YAML
*.yml text eol=lf linguist-language=YAML
*.md text eol=lf linguist-language=Markdown
*.sh text eol=lf linguist-language=Shell
*.bash text eol=lf linguist-language=Shell
*.ps1 text eol=crlf linguist-language=PowerShell
# Documentation
*.txt text eol=lf
LICENSE* text eol=lf
# Configuration files
.editorconfig text eol=lf
.gitattributes text eol=lf
.gitignore text eol=lf
.dockerignore text eol=lf
# Rust-specific
Cargo.lock text eol=lf linguist-generated
Cargo.toml text eol=lf
# Declare files that will always have CRLF line endings on checkout
*.sln text eol=crlf
# Denote all files that are truly binary and should not be modified
*.png binary
*.jpg binary
*.jpeg binary
*.gif binary
*.ico binary
*.svg text
*.wasm binary
*.woff binary
*.woff2 binary
*.ttf binary
*.eot binary
*.mp3 binary
*.mp4 binary
*.webm binary
*.zip binary
*.tar binary
*.gz binary
*.bz2 binary
*.7z binary
*.db binary

301
.github/labeler.yml vendored
View File

@ -36,145 +36,6 @@
- any-glob-to-any-file:
- "src/channels/**"
"channel:bluesky":
- changed-files:
- any-glob-to-any-file:
- "src/channels/bluesky.rs"
"channel:clawdtalk":
- changed-files:
- any-glob-to-any-file:
- "src/channels/clawdtalk.rs"
"channel:cli":
- changed-files:
- any-glob-to-any-file:
- "src/channels/cli.rs"
"channel:dingtalk":
- changed-files:
- any-glob-to-any-file:
- "src/channels/dingtalk.rs"
"channel:discord":
- changed-files:
- any-glob-to-any-file:
- "src/channels/discord.rs"
- "src/channels/discord_history.rs"
"channel:email":
- changed-files:
- any-glob-to-any-file:
- "src/channels/email_channel.rs"
- "src/channels/gmail_push.rs"
"channel:imessage":
- changed-files:
- any-glob-to-any-file:
- "src/channels/imessage.rs"
"channel:irc":
- changed-files:
- any-glob-to-any-file:
- "src/channels/irc.rs"
"channel:lark":
- changed-files:
- any-glob-to-any-file:
- "src/channels/lark.rs"
"channel:linq":
- changed-files:
- any-glob-to-any-file:
- "src/channels/linq.rs"
"channel:matrix":
- changed-files:
- any-glob-to-any-file:
- "src/channels/matrix.rs"
"channel:mattermost":
- changed-files:
- any-glob-to-any-file:
- "src/channels/mattermost.rs"
"channel:mochat":
- changed-files:
- any-glob-to-any-file:
- "src/channels/mochat.rs"
"channel:mqtt":
- changed-files:
- any-glob-to-any-file:
- "src/channels/mqtt.rs"
"channel:nextcloud-talk":
- changed-files:
- any-glob-to-any-file:
- "src/channels/nextcloud_talk.rs"
"channel:nostr":
- changed-files:
- any-glob-to-any-file:
- "src/channels/nostr.rs"
"channel:notion":
- changed-files:
- any-glob-to-any-file:
- "src/channels/notion.rs"
"channel:qq":
- changed-files:
- any-glob-to-any-file:
- "src/channels/qq.rs"
"channel:reddit":
- changed-files:
- any-glob-to-any-file:
- "src/channels/reddit.rs"
"channel:signal":
- changed-files:
- any-glob-to-any-file:
- "src/channels/signal.rs"
"channel:slack":
- changed-files:
- any-glob-to-any-file:
- "src/channels/slack.rs"
"channel:telegram":
- changed-files:
- any-glob-to-any-file:
- "src/channels/telegram.rs"
"channel:twitter":
- changed-files:
- any-glob-to-any-file:
- "src/channels/twitter.rs"
"channel:wati":
- changed-files:
- any-glob-to-any-file:
- "src/channels/wati.rs"
"channel:webhook":
- changed-files:
- any-glob-to-any-file:
- "src/channels/webhook.rs"
"channel:wecom":
- changed-files:
- any-glob-to-any-file:
- "src/channels/wecom.rs"
"channel:whatsapp":
- changed-files:
- any-glob-to-any-file:
- "src/channels/whatsapp.rs"
- "src/channels/whatsapp_storage.rs"
- "src/channels/whatsapp_web.rs"
"gateway":
- changed-files:
- any-glob-to-any-file:
@ -240,73 +101,6 @@
- any-glob-to-any-file:
- "src/providers/**"
"provider:anthropic":
- changed-files:
- any-glob-to-any-file:
- "src/providers/anthropic.rs"
"provider:azure-openai":
- changed-files:
- any-glob-to-any-file:
- "src/providers/azure_openai.rs"
"provider:bedrock":
- changed-files:
- any-glob-to-any-file:
- "src/providers/bedrock.rs"
"provider:claude-code":
- changed-files:
- any-glob-to-any-file:
- "src/providers/claude_code.rs"
"provider:compatible":
- changed-files:
- any-glob-to-any-file:
- "src/providers/compatible.rs"
"provider:copilot":
- changed-files:
- any-glob-to-any-file:
- "src/providers/copilot.rs"
"provider:gemini":
- changed-files:
- any-glob-to-any-file:
- "src/providers/gemini.rs"
- "src/providers/gemini_cli.rs"
"provider:glm":
- changed-files:
- any-glob-to-any-file:
- "src/providers/glm.rs"
"provider:kilocli":
- changed-files:
- any-glob-to-any-file:
- "src/providers/kilocli.rs"
"provider:ollama":
- changed-files:
- any-glob-to-any-file:
- "src/providers/ollama.rs"
"provider:openai":
- changed-files:
- any-glob-to-any-file:
- "src/providers/openai.rs"
- "src/providers/openai_codex.rs"
"provider:openrouter":
- changed-files:
- any-glob-to-any-file:
- "src/providers/openrouter.rs"
"provider:telnyx":
- changed-files:
- any-glob-to-any-file:
- "src/providers/telnyx.rs"
"service":
- changed-files:
- any-glob-to-any-file:
@ -327,101 +121,6 @@
- any-glob-to-any-file:
- "src/tools/**"
"tool:browser":
- changed-files:
- any-glob-to-any-file:
- "src/tools/browser.rs"
- "src/tools/browser_delegate.rs"
- "src/tools/browser_open.rs"
- "src/tools/text_browser.rs"
- "src/tools/screenshot.rs"
"tool:composio":
- changed-files:
- any-glob-to-any-file:
- "src/tools/composio.rs"
"tool:cron":
- changed-files:
- any-glob-to-any-file:
- "src/tools/cron_add.rs"
- "src/tools/cron_list.rs"
- "src/tools/cron_remove.rs"
- "src/tools/cron_run.rs"
- "src/tools/cron_runs.rs"
- "src/tools/cron_update.rs"
"tool:file":
- changed-files:
- any-glob-to-any-file:
- "src/tools/file_edit.rs"
- "src/tools/file_read.rs"
- "src/tools/file_write.rs"
- "src/tools/glob_search.rs"
- "src/tools/content_search.rs"
"tool:google-workspace":
- changed-files:
- any-glob-to-any-file:
- "src/tools/google_workspace.rs"
"tool:mcp":
- changed-files:
- any-glob-to-any-file:
- "src/tools/mcp_client.rs"
- "src/tools/mcp_deferred.rs"
- "src/tools/mcp_protocol.rs"
- "src/tools/mcp_tool.rs"
- "src/tools/mcp_transport.rs"
"tool:memory":
- changed-files:
- any-glob-to-any-file:
- "src/tools/memory_forget.rs"
- "src/tools/memory_recall.rs"
- "src/tools/memory_store.rs"
"tool:microsoft365":
- changed-files:
- any-glob-to-any-file:
- "src/tools/microsoft365/**"
"tool:shell":
- changed-files:
- any-glob-to-any-file:
- "src/tools/shell.rs"
- "src/tools/node_tool.rs"
- "src/tools/cli_discovery.rs"
"tool:sop":
- changed-files:
- any-glob-to-any-file:
- "src/tools/sop_advance.rs"
- "src/tools/sop_approve.rs"
- "src/tools/sop_execute.rs"
- "src/tools/sop_list.rs"
- "src/tools/sop_status.rs"
"tool:web":
- changed-files:
- any-glob-to-any-file:
- "src/tools/web_fetch.rs"
- "src/tools/web_search_tool.rs"
- "src/tools/web_search_provider_routing.rs"
- "src/tools/http_request.rs"
"tool:security":
- changed-files:
- any-glob-to-any-file:
- "src/tools/security_ops.rs"
- "src/tools/verifiable_intent.rs"
"tool:cloud":
- changed-files:
- any-glob-to-any-file:
- "src/tools/cloud_ops.rs"
- "src/tools/cloud_patterns.rs"
"tunnel":
- changed-files:
- any-glob-to-any-file:

View File

@ -7,7 +7,7 @@ on:
branches: [master]
concurrency:
group: ci-${{ github.event.pull_request.number || 'push-master' }}
group: ci-${{ github.event.pull_request.number || github.sha }}
cancel-in-progress: true
permissions:
@ -133,29 +133,6 @@ jobs:
CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER: clang
CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUSTFLAGS: "-C link-arg=-fuse-ld=mold"
check-all-features:
name: Check (all features)
runs-on: ubuntu-latest
timeout-minutes: 20
needs: [lint]
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
with:
fetch-depth: 0
- uses: dtolnay/rust-toolchain@631a55b12751854ce901bb631d5902ceb48146f7 # stable
with:
toolchain: 1.92.0
- uses: Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5 # v2
- name: Install system dependencies
run: sudo apt-get update -qq && sudo apt-get install -y libudev-dev
- name: Ensure web/dist placeholder exists
run: mkdir -p web/dist && touch web/dist/.gitkeep
- name: Check all features
run: cargo check --features ci-all --locked
docs-quality:
name: Docs Quality
runs-on: ubuntu-latest
@ -180,7 +157,7 @@ jobs:
gate:
name: CI Required Gate
if: always()
needs: [lint, lint-strict-delta, test, build, docs-quality, check-all-features]
needs: [lint, lint-strict-delta, test, build, docs-quality]
runs-on: ubuntu-latest
steps:
- name: Check upstream job results

View File

@ -44,11 +44,6 @@ jobs:
cross_compiler: gcc-aarch64-linux-gnu
linker_env: CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER
linker: aarch64-linux-gnu-gcc
- os: ubuntu-latest
target: armv7-unknown-linux-gnueabihf
cross_compiler: gcc-arm-linux-gnueabihf
linker_env: CARGO_TARGET_ARMV7_UNKNOWN_LINUX_GNUEABIHF_LINKER
linker: arm-linux-gnueabihf-gcc
- os: macos-15-intel
target: x86_64-apple-darwin
- os: windows-latest
@ -79,4 +74,4 @@ jobs:
if [ -n "${{ matrix.linker_env || '' }}" ] && [ -n "${{ matrix.linker || '' }}" ]; then
export "${{ matrix.linker_env }}=${{ matrix.linker }}"
fi
cargo build --release --locked --features channel-matrix,channel-lark,memory-postgres --target ${{ matrix.target }}
cargo build --release --locked --features channel-matrix --target ${{ matrix.target }}

View File

@ -1,19 +0,0 @@
name: PR Path Labeler
on:
pull_request_target:
types: [opened, synchronize, reopened]
permissions:
contents: read
pull-requests: write
jobs:
label:
name: Apply path labels
runs-on: ubuntu-latest
timeout-minutes: 5
steps:
- uses: actions/labeler@8558fd74291d67161a8a78ce36a881fa63b766a9 # v5
with:
sync-labels: true

View File

@ -134,27 +134,15 @@ jobs:
exit 1
fi
# Set up SSH key — normalize line endings and ensure trailing newline
mkdir -p ~/.ssh
chmod 700 ~/.ssh
printf '%s\n' "$AUR_SSH_KEY" | tr -d '\r' > ~/.ssh/aur
echo "$AUR_SSH_KEY" > ~/.ssh/aur
chmod 600 ~/.ssh/aur
cat > ~/.ssh/config <<'SSH_CONFIG'
cat >> ~/.ssh/config <<SSH_CONFIG
Host aur.archlinux.org
IdentityFile ~/.ssh/aur
User aur
StrictHostKeyChecking accept-new
SSH_CONFIG
chmod 600 ~/.ssh/config
# Verify key is valid and print fingerprint for debugging
echo "::group::SSH key diagnostics"
ssh-keygen -l -f ~/.ssh/aur || { echo "::error::AUR_SSH_KEY is not a valid SSH private key"; exit 1; }
echo "::endgroup::"
# Test SSH connectivity before attempting clone
ssh -T -o BatchMode=yes -o ConnectTimeout=10 aur@aur.archlinux.org 2>&1 || true
tmp_dir="$(mktemp -d)"
git clone ssh://aur@aur.archlinux.org/zeroclaw.git "$tmp_dir/aur"

View File

@ -1,22 +1,6 @@
name: Pub Homebrew Core
on:
workflow_call:
inputs:
release_tag:
description: "Existing release tag to publish (vX.Y.Z)"
required: true
type: string
dry_run:
description: "Patch formula only (no push/PR)"
required: false
default: false
type: boolean
secrets:
HOMEBREW_UPSTREAM_PR_TOKEN:
required: false
HOMEBREW_CORE_BOT_TOKEN:
required: false
workflow_dispatch:
inputs:
release_tag:
@ -162,12 +146,6 @@ jobs:
perl -0pi -e "s|^ sha256 \".*\"| sha256 \"${tarball_sha}\"|m" "$formula_file"
perl -0pi -e "s|^ license \".*\"| license \"Apache-2.0 OR MIT\"|m" "$formula_file"
# Ensure Node.js build dependency is declared so that build.rs can
# run `npm ci && npm run build` to produce the web frontend assets.
if ! grep -q 'depends_on "node" => :build' "$formula_file"; then
perl -0pi -e 's|( depends_on "rust" => :build\n)|\1 depends_on "node" => :build\n|m' "$formula_file"
fi
git -C "$repo_dir" diff -- "$FORMULA_PATH" > "$tmp_repo/formula.diff"
if [[ ! -s "$tmp_repo/formula.diff" ]]; then
echo "::error::No formula changes generated. Nothing to publish."

View File

@ -19,7 +19,6 @@ env:
jobs:
detect-version-change:
name: Detect Version Bump
if: github.repository == 'zeroclaw-labs/zeroclaw'
runs-on: ubuntu-latest
outputs:
changed: ${{ steps.check.outputs.changed }}
@ -41,14 +40,6 @@ jobs:
echo "Current version: ${current}"
echo "Previous version: ${previous}"
# Skip if stable release workflow will handle this version
# (indicated by an existing or imminent stable tag)
if git ls-remote --exit-code --tags origin "refs/tags/v${current}" >/dev/null 2>&1; then
echo "Stable tag v${current} exists — stable release workflow handles crates.io"
echo "changed=false" >> "$GITHUB_OUTPUT"
exit 0
fi
if [[ "$current" != "$previous" && -n "$current" ]]; then
echo "changed=true" >> "$GITHUB_OUTPUT"
echo "version=${current}" >> "$GITHUB_OUTPUT"
@ -111,22 +102,6 @@ jobs:
- name: Clean web build artifacts
run: rm -rf web/node_modules web/src web/package.json web/package-lock.json web/tsconfig*.json web/vite.config.ts web/index.html
- name: Publish aardvark-sys to crates.io
shell: bash
env:
CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}
run: |
OUTPUT=$(cargo publish --locked --allow-dirty --no-verify -p aardvark-sys 2>&1) && exit 0
echo "$OUTPUT"
if echo "$OUTPUT" | grep -q 'already exists'; then
echo "::notice::aardvark-sys already on crates.io — skipping"
exit 0
fi
exit 1
- name: Wait for aardvark-sys to index
run: sleep 15
- name: Publish to crates.io
shell: bash
env:

View File

@ -67,24 +67,6 @@ jobs:
- name: Clean web build artifacts
run: rm -rf web/node_modules web/src web/package.json web/package-lock.json web/tsconfig*.json web/vite.config.ts web/index.html
- name: Publish aardvark-sys to crates.io
if: "!inputs.dry_run"
shell: bash
env:
CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}
run: |
OUTPUT=$(cargo publish --locked --allow-dirty --no-verify -p aardvark-sys 2>&1) && exit 0
echo "$OUTPUT"
if echo "$OUTPUT" | grep -q 'already exists'; then
echo "::notice::aardvark-sys already on crates.io — skipping"
exit 0
fi
exit 1
- name: Wait for aardvark-sys to index
if: "!inputs.dry_run"
run: sleep 15
- name: Publish (dry run)
if: inputs.dry_run
run: cargo publish --dry-run --locked --allow-dirty --no-verify

View File

@ -16,53 +16,29 @@ env:
CARGO_TERM_COLOR: always
REGISTRY: ghcr.io
IMAGE_NAME: ${{ github.repository }}
RELEASE_CARGO_FEATURES: channel-matrix,channel-lark,memory-postgres
jobs:
version:
name: Resolve Version
if: github.repository == 'zeroclaw-labs/zeroclaw'
runs-on: ubuntu-latest
outputs:
version: ${{ steps.ver.outputs.version }}
tag: ${{ steps.ver.outputs.tag }}
skip: ${{ steps.ver.outputs.skip }}
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
with:
fetch-depth: 2
- name: Compute beta version
id: ver
shell: bash
run: |
set -euo pipefail
base_version=$(sed -n 's/^version = "\([^"]*\)"/\1/p' Cargo.toml | head -1)
# Skip beta if this is a version bump commit (stable release handles it)
commit_msg=$(git log -1 --pretty=format:"%s")
if [[ "$commit_msg" =~ ^chore:\ bump\ version ]]; then
echo "Version bump commit detected — skipping beta release"
echo "skip=true" >> "$GITHUB_OUTPUT"
exit 0
fi
# Skip beta if a stable tag already exists for this version
if git ls-remote --exit-code --tags origin "refs/tags/v${base_version}" >/dev/null 2>&1; then
echo "Stable tag v${base_version} exists — skipping beta release"
echo "skip=true" >> "$GITHUB_OUTPUT"
exit 0
fi
beta_tag="v${base_version}-beta.${GITHUB_RUN_NUMBER}"
echo "version=${base_version}" >> "$GITHUB_OUTPUT"
echo "tag=${beta_tag}" >> "$GITHUB_OUTPUT"
echo "skip=false" >> "$GITHUB_OUTPUT"
echo "Beta release: ${beta_tag}"
release-notes:
name: Generate Release Notes
needs: [version]
if: github.repository == 'zeroclaw-labs/zeroclaw' && needs.version.outputs.skip != 'true'
runs-on: ubuntu-latest
outputs:
notes: ${{ steps.notes.outputs.body }}
@ -153,8 +129,6 @@ jobs:
web:
name: Build Web Dashboard
needs: [version]
if: github.repository == 'zeroclaw-labs/zeroclaw' && needs.version.outputs.skip != 'true'
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
@ -194,13 +168,6 @@ jobs:
cross_compiler: gcc-aarch64-linux-gnu
linker_env: CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER
linker: aarch64-linux-gnu-gcc
- os: ubuntu-22.04
target: armv7-unknown-linux-gnueabihf
artifact: zeroclaw
ext: tar.gz
cross_compiler: gcc-arm-linux-gnueabihf
linker_env: CARGO_TARGET_ARMV7_UNKNOWN_LINUX_GNUEABIHF_LINKER
linker: arm-linux-gnueabihf-gcc
- os: macos-14
target: aarch64-apple-darwin
artifact: zeroclaw
@ -246,7 +213,7 @@ jobs:
if [ -n "${{ matrix.linker_env || '' }}" ] && [ -n "${{ matrix.linker || '' }}" ]; then
export "${{ matrix.linker_env }}=${{ matrix.linker }}"
fi
cargo build --release --locked --features "${{ env.RELEASE_CARGO_FEATURES }}" --target ${{ matrix.target }}
cargo build --release --locked --features channel-matrix --target ${{ matrix.target }}
- name: Package (Unix)
if: runner.os != 'Windows'
@ -266,65 +233,9 @@ jobs:
path: zeroclaw-${{ matrix.target }}.${{ matrix.ext }}
retention-days: 7
build-desktop:
name: Build Desktop App (macOS Universal)
needs: [version]
if: needs.version.outputs.skip != 'true'
runs-on: macos-14
timeout-minutes: 40
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
- uses: dtolnay/rust-toolchain@631a55b12751854ce901bb631d5902ceb48146f7 # stable
with:
toolchain: 1.92.0
targets: aarch64-apple-darwin,x86_64-apple-darwin
- uses: Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5 # v2
with:
prefix-key: macos-tauri
- uses: actions/setup-node@v4
with:
node-version: 22
- name: Install Tauri CLI
run: cargo install tauri-cli --locked
- name: Sync Tauri version with Cargo.toml
shell: bash
run: |
VERSION=$(sed -n 's/^version = "\([^"]*\)"/\1/p' Cargo.toml | head -1)
cd apps/tauri
if command -v jq >/dev/null 2>&1; then
jq --arg v "$VERSION" '.version = $v' tauri.conf.json > tmp.json && mv tmp.json tauri.conf.json
else
sed -i '' "s/\"version\": \"[^\"]*\"/\"version\": \"$VERSION\"/" tauri.conf.json
fi
echo "Tauri version set to: $VERSION"
- name: Build Tauri app (universal binary)
working-directory: apps/tauri
run: cargo tauri build --target universal-apple-darwin
- name: Prepare desktop release assets
run: |
mkdir -p desktop-assets
find target -name '*.dmg' -exec cp {} desktop-assets/ZeroClaw.dmg \; 2>/dev/null || true
find target -name '*.app.tar.gz' -exec cp {} desktop-assets/ZeroClaw-macos.app.tar.gz \; 2>/dev/null || true
find target -name '*.app.tar.gz.sig' -exec cp {} desktop-assets/ZeroClaw-macos.app.tar.gz.sig \; 2>/dev/null || true
echo "--- Desktop assets ---"
ls -lh desktop-assets/
- uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
with:
name: desktop-macos
path: desktop-assets/*
retention-days: 7
publish:
name: Publish Beta Release
needs: [version, release-notes, build, build-desktop]
needs: [version, release-notes, build]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
@ -334,21 +245,16 @@ jobs:
pattern: zeroclaw-*
path: artifacts
- uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4
with:
name: desktop-macos
path: artifacts/desktop-macos
- name: Generate checksums
run: |
cd artifacts
find . -type f \( -name '*.tar.gz' -o -name '*.zip' -o -name '*.dmg' \) -exec sha256sum {} + | sed 's| \./[^/]*/| |' > SHA256SUMS
find . -type f \( -name '*.tar.gz' -o -name '*.zip' \) -exec sha256sum {} + | sed 's| \./[^/]*/| |' > SHA256SUMS
cat SHA256SUMS
- name: Collect release assets
run: |
mkdir -p release-assets
find artifacts -type f \( -name '*.tar.gz' -o -name '*.zip' -o -name '*.dmg' -o -name 'SHA256SUMS' \) -exec cp {} release-assets/ \;
find artifacts -type f \( -name '*.tar.gz' -o -name '*.zip' -o -name 'SHA256SUMS' \) -exec cp {} release-assets/ \;
cp install.sh release-assets/
echo "--- Assets ---"
ls -lh release-assets/
@ -439,6 +345,8 @@ jobs:
with:
context: docker-ctx
push: true
build-args: |
ZEROCLAW_CARGO_FEATURES=channel-matrix
tags: |
${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ needs.version.outputs.tag }}
${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:beta

View File

@ -1,9 +1,6 @@
name: Release Stable
on:
push:
tags:
- "v[0-9]+.[0-9]+.[0-9]+" # stable tags only (no -beta suffix)
workflow_dispatch:
inputs:
version:
@ -23,7 +20,6 @@ env:
CARGO_TERM_COLOR: always
REGISTRY: ghcr.io
IMAGE_NAME: ${{ github.repository }}
RELEASE_CARGO_FEATURES: channel-matrix,channel-lark,memory-postgres
jobs:
validate:
@ -36,22 +32,11 @@ jobs:
- name: Validate semver and Cargo.toml match
id: check
shell: bash
env:
INPUT_VERSION: ${{ inputs.version || '' }}
REF_NAME: ${{ github.ref_name }}
EVENT_NAME: ${{ github.event_name }}
run: |
set -euo pipefail
input_version="${{ inputs.version }}"
cargo_version=$(sed -n 's/^version = "\([^"]*\)"/\1/p' Cargo.toml | head -1)
# Resolve version from tag push or manual input
if [[ "$EVENT_NAME" == "push" ]]; then
# Tag push: extract version from tag name (v0.5.9 -> 0.5.9)
input_version="${REF_NAME#v}"
else
input_version="$INPUT_VERSION"
fi
if [[ ! "$input_version" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
echo "::error::Version must be semver (X.Y.Z). Got: ${input_version}"
exit 1
@ -63,13 +48,9 @@ jobs:
fi
tag="v${input_version}"
# Only check tag existence for manual dispatch (tag push means it already exists)
if [[ "$EVENT_NAME" != "push" ]]; then
if git ls-remote --exit-code --tags origin "refs/tags/${tag}" >/dev/null 2>&1; then
echo "::error::Tag ${tag} already exists."
exit 1
fi
if git ls-remote --exit-code --tags origin "refs/tags/${tag}" >/dev/null 2>&1; then
echo "::error::Tag ${tag} already exists."
exit 1
fi
echo "tag=${tag}" >> "$GITHUB_OUTPUT"
@ -188,22 +169,6 @@ jobs:
cross_compiler: gcc-aarch64-linux-gnu
linker_env: CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER
linker: aarch64-linux-gnu-gcc
- os: ubuntu-22.04
target: armv7-unknown-linux-gnueabihf
artifact: zeroclaw
ext: tar.gz
cross_compiler: gcc-arm-linux-gnueabihf
linker_env: CARGO_TARGET_ARMV7_UNKNOWN_LINUX_GNUEABIHF_LINKER
linker: arm-linux-gnueabihf-gcc
skip_prometheus: true
- os: ubuntu-22.04
target: arm-unknown-linux-gnueabihf
artifact: zeroclaw
ext: tar.gz
cross_compiler: gcc-arm-linux-gnueabihf
linker_env: CARGO_TARGET_ARM_UNKNOWN_LINUX_GNUEABIHF_LINKER
linker: arm-linux-gnueabihf-gcc
skip_prometheus: true
- os: macos-14
target: aarch64-apple-darwin
artifact: zeroclaw
@ -249,11 +214,7 @@ jobs:
if [ -n "${{ matrix.linker_env || '' }}" ] && [ -n "${{ matrix.linker || '' }}" ]; then
export "${{ matrix.linker_env }}=${{ matrix.linker }}"
fi
if [ "${{ matrix.skip_prometheus || 'false' }}" = "true" ]; then
cargo build --release --locked --no-default-features --features "${{ env.RELEASE_CARGO_FEATURES }},channel-nostr,skill-creation" --target ${{ matrix.target }}
else
cargo build --release --locked --features "${{ env.RELEASE_CARGO_FEATURES }}" --target ${{ matrix.target }}
fi
cargo build --release --locked --features channel-matrix --target ${{ matrix.target }}
- name: Package (Unix)
if: runner.os != 'Windows'
@ -273,64 +234,9 @@ jobs:
path: zeroclaw-${{ matrix.target }}.${{ matrix.ext }}
retention-days: 14
build-desktop:
name: Build Desktop App (macOS Universal)
needs: [validate]
runs-on: macos-14
timeout-minutes: 40
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
- uses: dtolnay/rust-toolchain@631a55b12751854ce901bb631d5902ceb48146f7 # stable
with:
toolchain: 1.92.0
targets: aarch64-apple-darwin,x86_64-apple-darwin
- uses: Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5 # v2
with:
prefix-key: macos-tauri
- uses: actions/setup-node@v4
with:
node-version: 22
- name: Install Tauri CLI
run: cargo install tauri-cli --locked
- name: Sync Tauri version with Cargo.toml
shell: bash
run: |
VERSION=$(sed -n 's/^version = "\([^"]*\)"/\1/p' Cargo.toml | head -1)
cd apps/tauri
if command -v jq >/dev/null 2>&1; then
jq --arg v "$VERSION" '.version = $v' tauri.conf.json > tmp.json && mv tmp.json tauri.conf.json
else
sed -i '' "s/\"version\": \"[^\"]*\"/\"version\": \"$VERSION\"/" tauri.conf.json
fi
echo "Tauri version set to: $VERSION"
- name: Build Tauri app (universal binary)
working-directory: apps/tauri
run: cargo tauri build --target universal-apple-darwin
- name: Prepare desktop release assets
run: |
mkdir -p desktop-assets
find target -name '*.dmg' -exec cp {} desktop-assets/ZeroClaw.dmg \; 2>/dev/null || true
find target -name '*.app.tar.gz' -exec cp {} desktop-assets/ZeroClaw-macos.app.tar.gz \; 2>/dev/null || true
find target -name '*.app.tar.gz.sig' -exec cp {} desktop-assets/ZeroClaw-macos.app.tar.gz.sig \; 2>/dev/null || true
echo "--- Desktop assets ---"
ls -lh desktop-assets/
- uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
with:
name: desktop-macos
path: desktop-assets/*
retention-days: 14
publish:
name: Publish Stable Release
needs: [validate, release-notes, build, build-desktop]
needs: [validate, release-notes, build]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
@ -340,21 +246,16 @@ jobs:
pattern: zeroclaw-*
path: artifacts
- uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4
with:
name: desktop-macos
path: artifacts/desktop-macos
- name: Generate checksums
run: |
cd artifacts
find . -type f \( -name '*.tar.gz' -o -name '*.zip' -o -name '*.dmg' \) -exec sha256sum {} + | sed 's| \./[^/]*/| |' > SHA256SUMS
find . -type f \( -name '*.tar.gz' -o -name '*.zip' \) -exec sha256sum {} + | sed 's| \./[^/]*/| |' > SHA256SUMS
cat SHA256SUMS
- name: Collect release assets
run: |
mkdir -p release-assets
find artifacts -type f \( -name '*.tar.gz' -o -name '*.zip' -o -name '*.dmg' -o -name 'SHA256SUMS' \) -exec cp {} release-assets/ \;
find artifacts -type f \( -name '*.tar.gz' -o -name '*.zip' -o -name 'SHA256SUMS' \) -exec cp {} release-assets/ \;
cp install.sh release-assets/
echo "--- Assets ---"
ls -lh release-assets/
@ -364,14 +265,6 @@ jobs:
NOTES: ${{ needs.release-notes.outputs.notes }}
run: printf '%s\n' "$NOTES" > release-notes.md
- name: Create tag if manual dispatch
if: github.event_name == 'workflow_dispatch'
env:
TAG: ${{ needs.validate.outputs.tag }}
run: |
git tag -a "$TAG" -m "zeroclaw $TAG"
git push origin "$TAG"
- name: Create GitHub Release
env:
GH_TOKEN: ${{ secrets.RELEASE_TOKEN }}
@ -409,21 +302,6 @@ jobs:
- name: Clean web build artifacts
run: rm -rf web/node_modules web/src web/package.json web/package-lock.json web/tsconfig*.json web/vite.config.ts web/index.html
- name: Publish aardvark-sys to crates.io
env:
CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}
run: |
OUTPUT=$(cargo publish --locked --allow-dirty --no-verify -p aardvark-sys 2>&1) && exit 0
echo "$OUTPUT"
if echo "$OUTPUT" | grep -q 'already exists'; then
echo "::notice::aardvark-sys already on crates.io — skipping"
exit 0
fi
exit 1
- name: Wait for aardvark-sys to index
run: sleep 15
- name: Publish to crates.io
env:
CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}
@ -510,6 +388,8 @@ jobs:
with:
context: docker-ctx
push: true
build-args: |
ZEROCLAW_CARGO_FEATURES=channel-matrix
tags: |
${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ needs.validate.outputs.tag }}
${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:latest
@ -547,16 +427,6 @@ jobs:
dry_run: false
secrets: inherit
homebrew:
name: Update Homebrew Core
needs: [validate, publish]
if: ${{ !cancelled() && needs.publish.result == 'success' }}
uses: ./.github/workflows/pub-homebrew-core.yml
with:
release_tag: ${{ needs.validate.outputs.tag }}
dry_run: false
secrets: inherit
# ── Post-publish: tweet after release + website are live ──────────────
# Docker push can be slow; don't let it block the tweet.
tweet:

View File

@ -1,92 +0,0 @@
# AGENTS.md — ZeroClaw
Cross-tool agent instructions for any AI coding assistant working on this repository.
## Commands
```bash
cargo fmt --all -- --check
cargo clippy --all-targets -- -D warnings
cargo test
```
Full pre-PR validation (recommended):
```bash
./dev/ci.sh all
```
Docs-only changes: run markdown lint and link-integrity checks. If touching bootstrap scripts: `bash -n install.sh`.
## Project Snapshot
ZeroClaw is a Rust-first autonomous agent runtime optimized for performance, efficiency, stability, extensibility, sustainability, and security.
Core architecture is trait-driven and modular. Extend by implementing traits and registering in factory modules.
Key extension points:
- `src/providers/traits.rs` (`Provider`)
- `src/channels/traits.rs` (`Channel`)
- `src/tools/traits.rs` (`Tool`)
- `src/memory/traits.rs` (`Memory`)
- `src/observability/traits.rs` (`Observer`)
- `src/runtime/traits.rs` (`RuntimeAdapter`)
- `src/peripherals/traits.rs` (`Peripheral`) — hardware boards (STM32, RPi GPIO)
## Repository Map
- `src/main.rs` — CLI entrypoint and command routing
- `src/lib.rs` — module exports and shared command enums
- `src/config/` — schema + config loading/merging
- `src/agent/` — orchestration loop
- `src/gateway/` — webhook/gateway server
- `src/security/` — policy, pairing, secret store
- `src/memory/` — markdown/sqlite memory backends + embeddings/vector merge
- `src/providers/` — model providers and resilient wrapper
- `src/channels/` — Telegram/Discord/Slack/etc channels
- `src/tools/` — tool execution surface (shell, file, memory, browser)
- `src/peripherals/` — hardware peripherals (STM32, RPi GPIO)
- `src/runtime/` — runtime adapters (currently native)
- `docs/` — topic-based documentation (setup-guides, reference, ops, security, hardware, contributing, maintainers)
- `.github/` — CI, templates, automation workflows
## Risk Tiers
- **Low risk**: docs/chore/tests-only changes
- **Medium risk**: most `src/**` behavior changes without boundary/security impact
- **High risk**: `src/security/**`, `src/runtime/**`, `src/gateway/**`, `src/tools/**`, `.github/workflows/**`, access-control boundaries
When uncertain, classify as higher risk.
## Workflow
1. **Read before write** — inspect existing module, factory wiring, and adjacent tests before editing.
2. **One concern per PR** — avoid mixed feature+refactor+infra patches.
3. **Implement minimal patch** — no speculative abstractions, no config keys without a concrete use case.
4. **Validate by risk tier** — docs-only: lightweight checks. Code changes: full relevant checks.
5. **Document impact** — update PR notes for behavior, risk, side effects, and rollback.
6. **Queue hygiene** — stacked PR: declare `Depends on #...`. Replacing old PR: declare `Supersedes #...`.
Branch/commit/PR rules:
- Work from a non-`master` branch. Open a PR to `master`; do not push directly.
- Use conventional commit titles. Prefer small PRs (`size: XS/S/M`).
- Follow `.github/pull_request_template.md` fully.
- Never commit secrets, personal data, or real identity information (see `@docs/contributing/pr-discipline.md`).
## Anti-Patterns
- Do not add heavy dependencies for minor convenience.
- Do not silently weaken security policy or access constraints.
- Do not add speculative config/feature flags "just in case".
- Do not mix massive formatting-only changes with functional changes.
- Do not modify unrelated modules "while here".
- Do not bypass failing checks without explicit explanation.
- Do not hide behavior-changing side effects in refactor commits.
- Do not include personal identity or sensitive information in test data, examples, docs, or commits.
## Linked References
- `@docs/contributing/change-playbooks.md` — adding providers, channels, tools, peripherals; security/gateway changes; architecture boundaries
- `@docs/contributing/pr-discipline.md` — privacy rules, superseded-PR attribution/templates, handoff template
- `@docs/contributing/docs-contract.md` — docs system contract, i18n rules, locale parity

1
AGENTS.md Symbolic link
View File

@ -0,0 +1 @@
CLAUDE.md

View File

@ -1,16 +1,90 @@
# CLAUDE.md — ZeroClaw (Claude Code)
# CLAUDE.md — ZeroClaw
> **Shared instructions live in [`AGENTS.md`](./AGENTS.md).**
> This file contains only Claude Code-specific directives.
## Commands
## Claude Code Settings
```bash
cargo fmt --all -- --check
cargo clippy --all-targets -- -D warnings
cargo test
```
Claude Code should read and follow all instructions in `AGENTS.md` at the repository root for project conventions, commands, risk tiers, workflow rules, and anti-patterns.
Full pre-PR validation (recommended):
## Hooks
```bash
./dev/ci.sh all
```
_No custom hooks defined yet._
Docs-only changes: run markdown lint and link-integrity checks. If touching bootstrap scripts: `bash -n install.sh`.
## Slash Commands
## Project Snapshot
_No custom slash commands defined yet._
ZeroClaw is a Rust-first autonomous agent runtime optimized for performance, efficiency, stability, extensibility, sustainability, and security.
Core architecture is trait-driven and modular. Extend by implementing traits and registering in factory modules.
Key extension points:
- `src/providers/traits.rs` (`Provider`)
- `src/channels/traits.rs` (`Channel`)
- `src/tools/traits.rs` (`Tool`)
- `src/memory/traits.rs` (`Memory`)
- `src/observability/traits.rs` (`Observer`)
- `src/runtime/traits.rs` (`RuntimeAdapter`)
- `src/peripherals/traits.rs` (`Peripheral`) — hardware boards (STM32, RPi GPIO)
## Repository Map
- `src/main.rs` — CLI entrypoint and command routing
- `src/lib.rs` — module exports and shared command enums
- `src/config/` — schema + config loading/merging
- `src/agent/` — orchestration loop
- `src/gateway/` — webhook/gateway server
- `src/security/` — policy, pairing, secret store
- `src/memory/` — markdown/sqlite memory backends + embeddings/vector merge
- `src/providers/` — model providers and resilient wrapper
- `src/channels/` — Telegram/Discord/Slack/etc channels
- `src/tools/` — tool execution surface (shell, file, memory, browser)
- `src/peripherals/` — hardware peripherals (STM32, RPi GPIO)
- `src/runtime/` — runtime adapters (currently native)
- `docs/` — topic-based documentation (setup-guides, reference, ops, security, hardware, contributing, maintainers)
- `.github/` — CI, templates, automation workflows
## Risk Tiers
- **Low risk**: docs/chore/tests-only changes
- **Medium risk**: most `src/**` behavior changes without boundary/security impact
- **High risk**: `src/security/**`, `src/runtime/**`, `src/gateway/**`, `src/tools/**`, `.github/workflows/**`, access-control boundaries
When uncertain, classify as higher risk.
## Workflow
1. **Read before write** — inspect existing module, factory wiring, and adjacent tests before editing.
2. **One concern per PR** — avoid mixed feature+refactor+infra patches.
3. **Implement minimal patch** — no speculative abstractions, no config keys without a concrete use case.
4. **Validate by risk tier** — docs-only: lightweight checks. Code changes: full relevant checks.
5. **Document impact** — update PR notes for behavior, risk, side effects, and rollback.
6. **Queue hygiene** — stacked PR: declare `Depends on #...`. Replacing old PR: declare `Supersedes #...`.
Branch/commit/PR rules:
- Work from a non-`master` branch. Open a PR to `master`; do not push directly.
- Use conventional commit titles. Prefer small PRs (`size: XS/S/M`).
- Follow `.github/pull_request_template.md` fully.
- Never commit secrets, personal data, or real identity information (see `@docs/contributing/pr-discipline.md`).
## Anti-Patterns
- Do not add heavy dependencies for minor convenience.
- Do not silently weaken security policy or access constraints.
- Do not add speculative config/feature flags "just in case".
- Do not mix massive formatting-only changes with functional changes.
- Do not modify unrelated modules "while here".
- Do not bypass failing checks without explicit explanation.
- Do not hide behavior-changing side effects in refactor commits.
- Do not include personal identity or sensitive information in test data, examples, docs, or commits.
## Linked References
- `@docs/contributing/change-playbooks.md` — adding providers, channels, tools, peripherals; security/gateway changes; architecture boundaries
- `@docs/contributing/pr-discipline.md` — privacy rules, superseded-PR attribution/templates, handoff template
- `@docs/contributing/docs-contract.md` — docs system contract, i18n rules, locale parity

5068
Cargo.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -1,10 +1,10 @@
[workspace]
members = [".", "crates/robot-kit", "crates/aardvark-sys", "apps/tauri"]
members = [".", "crates/robot-kit"]
resolver = "2"
[package]
name = "zeroclawlabs"
version = "0.6.1"
version = "0.5.0"
edition = "2021"
authors = ["theonlyhennygod"]
license = "MIT OR Apache-2.0"
@ -14,16 +14,6 @@ readme = "README.md"
keywords = ["ai", "agent", "cli", "assistant", "chatbot"]
categories = ["command-line-utilities", "api-bindings"]
rust-version = "1.87"
include = [
"/src/**/*",
"/build.rs",
"/Cargo.toml",
"/Cargo.lock",
"/LICENSE*",
"/README.md",
"/web/dist/**/*",
"/tool_descriptions/**/*",
]
[[bin]]
name = "zeroclaw"
@ -33,6 +23,16 @@ path = "src/main.rs"
name = "zeroclaw"
path = "src/lib.rs"
include = [
"/src/**/*",
"/build.rs",
"/Cargo.toml",
"/Cargo.lock",
"/LICENSE*",
"/README.md",
"/web/dist/**/*",
]
[dependencies]
# CLI - minimal and fast
clap = { version = "4.5", features = ["derive"] }
@ -84,21 +84,15 @@ nanohtml2text = "0.2"
fantoccini = { version = "0.22.1", optional = true, default-features = false, features = ["rustls-tls"] }
# Progress bars (update pipeline)
indicatif = "0.18"
indicatif = "0.17"
# Temp files (update pipeline rollback)
tempfile = "3.26"
# Zip extraction for ClawhHub / OpenClaw registry installers
zip = { version = "8.1", default-features = false, features = ["deflate"] }
# Error handling
anyhow = "1.0"
thiserror = "2.0"
# Aardvark I2C/SPI/GPIO USB adapter (Total Phase) — stub when SDK absent
aardvark-sys = { path = "crates/aardvark-sys", version = "0.1.0" }
# UUID generation
uuid = { version = "1.22", default-features = false, features = ["v4", "std"] }
@ -149,8 +143,7 @@ glob = "0.3"
which = "8.0"
# WebSocket client channels (Discord/Lark/DingTalk/Nostr)
tokio-tungstenite = { version = "0.29", features = ["rustls-tls-webpki-roots"] }
tokio-socks = "0.5"
tokio-tungstenite = { version = "0.28", features = ["rustls-tls-webpki-roots"] }
futures-util = { version = "0.3", default-features = false, features = ["sink"] }
nostr-sdk = { version = "0.44", default-features = false, features = ["nip04", "nip59"], optional = true }
regex = "1.10"
@ -197,15 +190,14 @@ probe-rs = { version = "0.31", optional = true }
# PDF extraction for datasheet RAG (optional, enable with --features rag-pdf)
pdf-extract = { version = "0.10", optional = true }
# WASM plugin runtime (extism)
extism = { version = "1.20", optional = true }
# Cross-platform audio capture for voice wake word detection (optional, enable with --features voice-wake)
cpal = { version = "0.15", optional = true }
# Terminal QR rendering for WhatsApp Web pairing flow.
qrcode = { version = "0.14", optional = true }
# TUI (Terminal User Interface)
ratatui = { version = "0.30", optional = true, default-features = false, features = ["crossterm"] }
crossterm = { version = "0.29", optional = true }
tui-textarea = { version = "0.7", optional = true, features = ["crossterm"] }
# WhatsApp Web client (wa-rs) — optional, enable with --features whatsapp-web
# Uses wa-rs for Bot and Client, wa-rs-core for storage traits, custom rusqlite backend avoids Diesel conflict.
wa-rs = { version = "0.2", optional = true, default-features = false }
@ -225,7 +217,7 @@ landlock = { version = "0.4", optional = true }
libc = "0.2"
[features]
default = ["observability-prometheus", "channel-nostr", "channel-lark", "skill-creation"]
default = ["observability-prometheus", "channel-nostr"]
channel-nostr = ["dep:nostr-sdk"]
hardware = ["nusb", "tokio-serial"]
channel-matrix = ["dep:matrix-sdk"]
@ -250,34 +242,10 @@ metrics = ["observability-prometheus"]
probe = ["dep:probe-rs"]
# rag-pdf = PDF ingestion for datasheet RAG
rag-pdf = ["dep:pdf-extract"]
# skill-creation = Autonomous skill creation from successful multi-step tasks
skill-creation = []
# whatsapp-web = Native WhatsApp Web client with custom rusqlite storage backend
whatsapp-web = ["dep:wa-rs", "dep:wa-rs-core", "dep:wa-rs-binary", "dep:wa-rs-proto", "dep:wa-rs-ureq-http", "dep:wa-rs-tokio-transport", "dep:serde-big-array", "dep:prost", "dep:qrcode"]
# voice-wake = Voice wake word detection via microphone (cpal)
voice-wake = ["dep:cpal"]
# WASM plugin system (extism-based)
plugins-wasm = ["dep:extism"]
# Meta-feature for CI: all features except those requiring system C libraries
# not available on standard CI runners (e.g., voice-wake needs libasound2-dev).
ci-all = [
"channel-nostr",
"hardware",
"channel-matrix",
"channel-lark",
"memory-postgres",
"observability-prometheus",
"observability-otel",
"peripheral-rpi",
"browser-native",
"sandbox-landlock",
"sandbox-bubblewrap",
"probe",
"rag-pdf",
"skill-creation",
"whatsapp-web",
"plugins-wasm",
]
# TUI (Terminal User Interface)
tui = ["dep:ratatui", "dep:crossterm", "dep:tui-textarea"]
[profile.release]
opt-level = "z" # Optimize for size

View File

@ -12,7 +12,7 @@ RUN npm run build
FROM rust:1.94-slim@sha256:da9dab7a6b8dd428e71718402e97207bb3e54167d37b5708616050b1e8f60ed6 AS builder
WORKDIR /app
ARG ZEROCLAW_CARGO_FEATURES="memory-postgres,channel-lark"
ARG ZEROCLAW_CARGO_FEATURES=""
# Install build dependencies
RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
@ -23,16 +23,13 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
# 1. Copy manifests to cache dependencies
COPY Cargo.toml Cargo.lock ./
# Include every workspace member: Cargo.lock is generated for the full workspace.
# Previously we used sed to drop `crates/robot-kit`, which made the manifest disagree
# with the lockfile and caused `cargo --locked` to fail (Cargo refused to rewrite the lock).
COPY crates/robot-kit/ crates/robot-kit/
COPY crates/aardvark-sys/ crates/aardvark-sys/
COPY crates/robot-kit/Cargo.toml crates/robot-kit/Cargo.toml
# Create dummy targets declared in Cargo.toml so manifest parsing succeeds.
RUN mkdir -p src benches \
RUN mkdir -p src benches crates/robot-kit/src \
&& echo "fn main() {}" > src/main.rs \
&& echo "" > src/lib.rs \
&& echo "fn main() {}" > benches/agent_benchmarks.rs
&& echo "fn main() {}" > benches/agent_benchmarks.rs \
&& echo "pub fn placeholder() {}" > crates/robot-kit/src/lib.rs
RUN --mount=type=cache,id=zeroclaw-cargo-registry,target=/usr/local/cargo/registry,sharing=locked \
--mount=type=cache,id=zeroclaw-cargo-git,target=/usr/local/cargo/git,sharing=locked \
--mount=type=cache,id=zeroclaw-target,target=/app/target,sharing=locked \
@ -41,11 +38,13 @@ RUN --mount=type=cache,id=zeroclaw-cargo-registry,target=/usr/local/cargo/regist
else \
cargo build --release --locked; \
fi
RUN rm -rf src benches
RUN rm -rf src benches crates/robot-kit/src
# 2. Copy only build-relevant source paths (avoid cache-busting on docs/tests/scripts)
COPY src/ src/
COPY benches/ benches/
COPY crates/ crates/
COPY firmware/ firmware/
COPY --from=web-builder /web/dist web/dist
COPY *.rs .
RUN touch src/main.rs
@ -62,7 +61,7 @@ RUN --mount=type=cache,id=zeroclaw-cargo-registry,target=/usr/local/cargo/regist
fi && \
cp target/release/zeroclaw /app/zeroclaw && \
strip /app/zeroclaw
RUN size=$(stat -c%s /app/zeroclaw) && \
RUN size=$(stat -c%s /app/zeroclaw 2>/dev/null || stat -f%z /app/zeroclaw) && \
if [ "$size" -lt 1000000 ]; then echo "ERROR: binary too small (${size} bytes), likely dummy build artifact" && exit 1; fi
# Prepare runtime directory structure and default config inline (no extra stage)
@ -79,10 +78,6 @@ RUN mkdir -p /zeroclaw-data/.zeroclaw /zeroclaw-data/workspace && \
'port = 42617' \
'host = "[::]"' \
'allow_public_bind = true' \
'' \
'[autonomy]' \
'level = "supervised"' \
'auto_approve = ["file_read", "file_write", "file_edit", "memory_recall", "memory_store", "web_search_tool", "web_fetch", "calculator", "glob_search", "content_search", "image_info", "weather", "git_operations"]' \
> /zeroclaw-data/.zeroclaw/config.toml && \
chown -R 65534:65534 /zeroclaw-data
@ -122,7 +117,7 @@ EXPOSE 42617
HEALTHCHECK --interval=60s --timeout=10s --retries=3 --start-period=10s \
CMD ["zeroclaw", "status", "--format=exit-code"]
ENTRYPOINT ["zeroclaw"]
CMD ["daemon"]
CMD ["gateway"]
# ── Stage 3: Production Runtime (Distroless) ─────────────────
FROM gcr.io/distroless/cc-debian13:nonroot@sha256:84fcd3c223b144b0cb6edc5ecc75641819842a9679a3a58fd6294bec47532bf7 AS release
@ -148,4 +143,4 @@ EXPOSE 42617
HEALTHCHECK --interval=60s --timeout=10s --retries=3 --start-period=10s \
CMD ["zeroclaw", "status", "--format=exit-code"]
ENTRYPOINT ["zeroclaw"]
CMD ["daemon"]
CMD ["gateway"]

View File

@ -27,7 +27,7 @@ RUN npm run build
FROM rust:1.94-bookworm AS builder
WORKDIR /app
ARG ZEROCLAW_CARGO_FEATURES="memory-postgres,channel-lark"
ARG ZEROCLAW_CARGO_FEATURES=""
# Install build dependencies
RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
@ -38,15 +38,13 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
# 1. Copy manifests to cache dependencies
COPY Cargo.toml Cargo.lock ./
# Include every workspace member: Cargo.lock is generated for the full workspace.
# Previously we used sed to drop `crates/robot-kit`, which made the manifest disagree
# with the lockfile and caused `cargo --locked` to fail (Cargo refused to rewrite the lock).
COPY crates/robot-kit/ crates/robot-kit/
COPY crates/robot-kit/Cargo.toml crates/robot-kit/Cargo.toml
# Create dummy targets declared in Cargo.toml so manifest parsing succeeds.
RUN mkdir -p src benches \
RUN mkdir -p src benches crates/robot-kit/src \
&& echo "fn main() {}" > src/main.rs \
&& echo "" > src/lib.rs \
&& echo "fn main() {}" > benches/agent_benchmarks.rs
&& echo "fn main() {}" > benches/agent_benchmarks.rs \
&& echo "pub fn placeholder() {}" > crates/robot-kit/src/lib.rs
RUN --mount=type=cache,id=zeroclaw-cargo-registry,target=/usr/local/cargo/registry,sharing=locked \
--mount=type=cache,id=zeroclaw-cargo-git,target=/usr/local/cargo/git,sharing=locked \
--mount=type=cache,id=zeroclaw-target,target=/app/target,sharing=locked \
@ -55,11 +53,13 @@ RUN --mount=type=cache,id=zeroclaw-cargo-registry,target=/usr/local/cargo/regist
else \
cargo build --release --locked; \
fi
RUN rm -rf src benches
RUN rm -rf src benches crates/robot-kit/src
# 2. Copy only build-relevant source paths (avoid cache-busting on docs/tests/scripts)
COPY src/ src/
COPY benches/ benches/
COPY crates/ crates/
COPY firmware/ firmware/
COPY --from=web-builder /web/dist web/dist
RUN touch src/main.rs
RUN --mount=type=cache,id=zeroclaw-cargo-registry,target=/usr/local/cargo/registry,sharing=locked \
@ -72,7 +72,7 @@ RUN --mount=type=cache,id=zeroclaw-cargo-registry,target=/usr/local/cargo/regist
fi && \
cp target/release/zeroclaw /app/zeroclaw && \
strip /app/zeroclaw
RUN size=$(stat -c%s /app/zeroclaw) && \
RUN size=$(stat -c%s /app/zeroclaw 2>/dev/null || stat -f%z /app/zeroclaw) && \
if [ "$size" -lt 1000000 ]; then echo "ERROR: binary too small (${size} bytes), likely dummy build artifact" && exit 1; fi
# Prepare runtime directory structure and default config inline (no extra stage)
@ -89,10 +89,6 @@ RUN mkdir -p /zeroclaw-data/.zeroclaw /zeroclaw-data/workspace && \
'port = 42617' \
'host = "[::]"' \
'allow_public_bind = true' \
'' \
'[autonomy]' \
'level = "supervised"' \
'auto_approve = ["file_read", "file_write", "file_edit", "memory_recall", "memory_store", "web_search_tool", "web_fetch", "calculator", "glob_search", "content_search", "image_info", "weather", "git_operations"]' \
> /zeroclaw-data/.zeroclaw/config.toml && \
chown -R 65534:65534 /zeroclaw-data
@ -127,4 +123,4 @@ EXPOSE 42617
HEALTHCHECK --interval=60s --timeout=10s --retries=3 --start-period=10s \
CMD ["zeroclaw", "status", "--format=exit-code"]
ENTRYPOINT ["zeroclaw"]
CMD ["daemon"]
CMD ["gateway"]

View File

@ -1,78 +0,0 @@
# Justfile - Convenient command runner for ZeroClaw development
# https://github.com/casey/just
# Default recipe to display help
_default:
@just --list
# Format all code
fmt:
cargo fmt --all
# Check formatting without making changes
fmt-check:
cargo fmt --all -- --check
# Run clippy lints
lint:
cargo clippy --all-targets -- -D warnings
# Run all tests
test:
cargo test --locked
# Run only unit tests (faster)
test-lib:
cargo test --lib
# Run the full CI quality gate locally
ci: fmt-check lint test
@echo "✅ All CI checks passed!"
# Build in release mode
build:
cargo build --release --locked
# Build in debug mode
build-debug:
cargo build
# Clean build artifacts
clean:
cargo clean
# Run zeroclaw with example config (for development)
dev *ARGS:
cargo run -- {{ARGS}}
# Check code without building
check:
cargo check --all-targets
# Run cargo doc and open in browser
doc:
cargo doc --no-deps --open
# Update dependencies
update:
cargo update
# Run cargo audit to check for security vulnerabilities
audit:
cargo audit
# Run cargo deny checks
deny:
cargo deny check
# Format TOML files (requires taplo)
fmt-toml:
taplo format
# Check TOML formatting (requires taplo)
fmt-toml-check:
taplo format --check
# Run all formatting tools
fmt-all: fmt fmt-toml
@echo "✅ All formatting complete!"

15
NOTICE
View File

@ -41,18 +41,3 @@ This project uses third-party libraries and components,
each licensed under their respective terms.
See Cargo.lock for a complete dependency list.
Verifiable Intent Specification
================================
The src/verifiable_intent/ module is a Rust-native reimplementation based on
the Verifiable Intent open specification and reference implementation:
Project: Verifiable Intent (VI)
Author: agent-intent
Source: https://github.com/agent-intent/verifiable-intent
License: Apache License, Version 2.0
This implementation follows the VI specification design (SD-JWT layered
credentials, constraint model, three-layer chain). No source code was copied
from the reference implementation.

File diff suppressed because it is too large Load Diff

View File

@ -1,33 +1,27 @@
<p align="center">
<img src="https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/docs/assets/zeroclaw-banner.png" alt="ZeroClaw" width="600" />
<img src="zeroclaw.png" alt="ZeroClaw" width="200" />
</p>
<h1 align="center">🦀 ZeroClaw — ব্যক্তিগত AI সহকারী</h1>
<h1 align="center">ZeroClaw 🦀</h1>
<p align="center">
<strong>শূন্য ওভারহেড। শূন্য আপস। 100% Rust। 100% অজ্ঞেয়বাদী।</strong><br>
⚡️ <strong>$10 হার্ডওয়্যারে <5MB RAM িয় চল: এটি OpenClaw 99% কম ি এব Mac mini 98% সস্ত!</strong>
<strong>শূন্য ওভারহেড। শূন্য আপস। 100% রাস্ট। 100% অজ্ঞেয়বাদী।</strong><br>
⚡️ <strong>$10 হার্ডওয়্যারে <5MB RAM িয় চল: এটি OpenClaw 99% কম ি এব Mac mini 98% সস্ত!</strong>
</p>
<p align="center">
<a href="LICENSE-APACHE"><img src="https://img.shields.io/badge/license-MIT%20OR%20Apache%202.0-blue.svg" alt="License: MIT OR Apache-2.0" /></a>
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors"><img src="https://img.shields.io/github/contributors/zeroclaw-labs/zeroclaw?color=green" alt="Contributors" /></a>
<a href="NOTICE"><img src="https://img.shields.io/badge/contributors-27+-green.svg" alt="Contributors" /></a>
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
<a href="https://x.com/zeroclawlabs?s=21"><img src="https://img.shields.io/badge/X-%40zeroclawlabs-000000?style=flat&logo=x&logoColor=white" alt="X: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclawlabs"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
<a href="https://discord.com/invite/wDshRVqRjx"><img src="https://img.shields.io/badge/Discord-Join-5865F2?style=flat&logo=discord&logoColor=white" alt="Discord" /></a>
<a href="https://www.instagram.com/therealzeroclaw"><img src="https://img.shields.io/badge/Instagram-%40therealzeroclaw-E4405F?style=flat&logo=instagram&logoColor=white" alt="Instagram: @therealzeroclaw" /></a>
<a href="https://www.tiktok.com/@zeroclawlabs"><img src="https://img.shields.io/badge/TikTok-%40zeroclawlabs-000000?style=flat&logo=tiktok&logoColor=white" alt="TikTok: @zeroclawlabs" /></a>
<a href="https://www.rednote.com/user/profile/69b735e6000000002603927e"><img src="https://img.shields.io/badge/RedNote-Official-FF2442?style=flat" alt="RedNote" /></a>
<a href="https://www.reddit.com/r/zeroclawlabs/"><img src="https://img.shields.io/badge/Reddit-r%2Fzeroclawlabs-FF4500?style=flat&logo=reddit&logoColor=white" alt="Reddit: r/zeroclawlabs" /></a>
<a href="https://zeroclawlabs.cn/group.jpg"><img src="https://img.shields.io/badge/WeChat-Group-B7D7A8?logo=wechat&logoColor=white" alt="WeChat Group" /></a>
<a href="https://www.xiaohongshu.com/user/profile/67cbfc43000000000d008307?xsec_token=AB73VnYnGNx5y36EtnnZfGmAmS-6Wzv8WMuGpfwfkg6Yc%3D&xsec_source=pc_search"><img src="https://img.shields.io/badge/Xiaohongshu-Official-FF2442?style=flat" alt="Xiaohongshu: Official" /></a>
<a href="https://t.me/zeroclawlabs"><img src="https://img.shields.io/badge/Telegram-%40zeroclawlabs-26A5E4?style=flat&logo=telegram&logoColor=white" alt="Telegram: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclaw"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
</p>
<p align="center">
Harvard, MIT, এবং Sundai.Club সম্প্রদায়ের ছাত্র ও সদস্যদের দ্বারা নির্মিত।
</p>
<p align="center">
🌐 <strong>ভাষাসমূহ:</strong>
🌐 <strong>ভাষা:</strong>
<a href="README.md">🇺🇸 English</a> ·
<a href="README.zh-CN.md">🇨🇳 简体中文</a> ·
<a href="README.ja.md">🇯🇵 日本語</a> ·
@ -61,695 +55,149 @@ Harvard, MIT, এবং Sundai.Club সম্প্রদায়ের ছা
<a href="README.nb.md">🇳🇴 Norsk</a>
</p>
ZeroClaw একটি ব্যক্তিগত AI সহকারী যা আপনি আপনার নিজের ডিভাইসে চালান। এটি আপনাকে সেই চ্যানেলগুলোতে উত্তর দেয় যা আপনি ইতিমধ্যে ব্যবহার করেন (WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, এবং আরও)। এতে রিয়েল-টাইম নিয়ন্ত্রণের জন্য একটি ওয়েব ড্যাশবোর্ড আছে এবং এটি হার্ডওয়্যার পেরিফেরালের (ESP32, STM32, Arduino, Raspberry Pi) সাথে সংযোগ করতে পারে। Gateway শুধুমাত্র কন্ট্রোল প্লেন — পণ্যটি হল সহকারী।
আপনি যদি একটি ব্যক্তিগত, একক-ব্যবহারকারী সহকারী চান যা স্থানীয়, দ্রুত এবং সর্বদা চালু মনে হয়, এটাই সেটি।
<p align="center">
<a href="https://zeroclawlabs.ai">ওয়েবসাইট</a> ·
<a href="docs/README.md">ডকুমেন্টেশন</a> ·
<a href="docs/architecture.md">আর্কিটেকচার</a> ·
<a href="#দ্রুত-শুরু">শুরু করুন</a> ·
<a href="#openclaw-থেকে-মাইগ্রেশন">OpenClaw থেকে মাইগ্রেশন</a> ·
<a href="docs/ops/troubleshooting.md">সমস্যা সমাধান</a> ·
<a href="https://discord.com/invite/wDshRVqRjx">Discord</a>
</p>
> **পছন্দের সেটআপ:** আপনার টার্মিনালে `zeroclaw onboard` চালান। ZeroClaw Onboard আপনাকে gateway, workspace, channels, এবং provider সেট আপ করতে ধাপে ধাপে গাইড করে। এটি প্রস্তাবিত সেটআপ পথ এবং macOS, Linux, এবং Windows (WSL2 এর মাধ্যমে) এ কাজ করে। নতুন ইনস্টল? এখানে শুরু করুন: [শুরু করুন](#দ্রুত-শুরু)
### সাবস্ক্রিপশন অথ (OAuth)
- **OpenAI Codex** (ChatGPT সাবস্ক্রিপশন)
- **Gemini** (Google OAuth)
- **Anthropic** (API key বা auth token)
মডেল নোট: যদিও অনেক প্রদানকারী/মডেল সমর্থিত, সেরা অভিজ্ঞতার জন্য আপনার কাছে উপলব্ধ সবচেয়ে শক্তিশালী সর্বশেষ প্রজন্মের মডেল ব্যবহার করুন। দেখুন [অনবোর্ডিং](#দ্রুত-শুরু)।
মডেল কনফিগ + CLI: [প্রদানকারী রেফারেন্স](docs/reference/api/providers-reference.md)
অথ প্রোফাইল রোটেশন (OAuth বনাম API keys) + ফেইলওভার: [মডেল ফেইলওভার](docs/reference/api/providers-reference.md)
## ইনস্টল (প্রস্তাবিত)
রানটাইম: Rust স্থিতিশীল টুলচেইন। একক বাইনারি, কোনো রানটাইম নির্ভরতা নেই।
### Homebrew (macOS/Linuxbrew)
```bash
brew install zeroclaw
```
### এক-ক্লিক বুটস্ট্র্যাপ
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./install.sh
```
`zeroclaw onboard` ইনস্টলের পরে স্বয়ংক্রিয়ভাবে চলে আপনার workspace এবং provider কনফিগার করতে।
## দ্রুত শুরু (TL;DR)
সম্পূর্ণ শিক্ষানবিশ গাইড (অথ, পেয়ারিং, চ্যানেল): [শুরু করুন](docs/setup-guides/one-click-bootstrap.md)
```bash
# Install + onboard
./install.sh --api-key "sk-..." --provider openrouter
# Start the gateway (webhook server + web dashboard)
zeroclaw gateway # default: 127.0.0.1:42617
zeroclaw gateway --port 0 # random port (security hardened)
# Talk to the assistant
zeroclaw agent -m "Hello, ZeroClaw!"
# Interactive mode
zeroclaw agent
# Start full autonomous runtime (gateway + channels + cron + hands)
zeroclaw daemon
# Check status
zeroclaw status
# Run diagnostics
zeroclaw doctor
```
আপগ্রেড করছেন? আপডেটের পরে `zeroclaw doctor` চালান।
### সোর্স থেকে (ডেভেলপমেন্ট)
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
cargo build --release --locked
cargo install --path . --force --locked
zeroclaw onboard
```
> **ডেভ ফলব্যাক (কোনো গ্লোবাল ইনস্টল নেই):** কমান্ডের আগে `cargo run --release --` যোগ করুন (উদাহরণ: `cargo run --release -- status`)।
## OpenClaw থেকে মাইগ্রেশন
ZeroClaw আপনার OpenClaw workspace, মেমোরি, এবং কনফিগারেশন আমদানি করতে পারে:
```bash
# Preview what will be migrated (safe, read-only)
zeroclaw migrate openclaw --dry-run
# Run the migration
zeroclaw migrate openclaw
```
এটি আপনার মেমোরি এন্ট্রি, workspace ফাইল, এবং কনফিগারেশন `~/.openclaw/` থেকে `~/.zeroclaw/` তে মাইগ্রেট করে। কনফিগ স্বয়ংক্রিয়ভাবে JSON থেকে TOML এ রূপান্তরিত হয়।
## নিরাপত্তা ডিফল্ট (DM অ্যাক্সেস)
ZeroClaw প্রকৃত মেসেজিং সারফেসের সাথে সংযোগ করে। ইনবাউন্ড DM গুলোকে অবিশ্বস্ত ইনপুট হিসেবে বিবেচনা করুন।
সম্পূর্ণ নিরাপত্তা গাইড: [SECURITY.md](SECURITY.md)
সকল চ্যানেলে ডিফল্ট আচরণ:
- **DM পেয়ারিং** (ডিফল্ট): অজানা প্রেরকরা একটি সংক্ষিপ্ত পেয়ারিং কোড পায় এবং বট তাদের বার্তা প্রক্রিয়া করে না।
- এর মাধ্যমে অনুমোদন করুন: `zeroclaw pairing approve <channel> <code>` (তারপর প্রেরক স্থানীয় অনুমতি তালিকায় যুক্ত হয়)।
- পাবলিক ইনবাউন্ড DM এর জন্য `config.toml` এ স্পষ্ট অপ্ট-ইন প্রয়োজন।
- ঝুঁকিপূর্ণ বা ভুল কনফিগার করা DM নীতি প্রকাশ করতে `zeroclaw doctor` চালান।
**স্বায়ত্তশাসন স্তর:**
| স্তর | আচরণ |
|-------|----------|
| `ReadOnly` | এজেন্ট পর্যবেক্ষণ করতে পারে কিন্তু কাজ করতে পারে না |
| `Supervised` (ডিফল্ট) | এজেন্ট মাঝারি/উচ্চ ঝুঁকি অপারেশনের জন্য অনুমোদন সহ কাজ করে |
| `Full` | এজেন্ট নীতি সীমার মধ্যে স্বায়ত্তশাসিতভাবে কাজ করে |
**স্যান্ডবক্সিং স্তর:** workspace আইসোলেশন, পাথ ট্রাভার্সাল ব্লকিং, কমান্ড অনুমতি তালিকা, নিষিদ্ধ পাথ (`/etc`, `/root`, `~/.ssh`), রেট লিমিটিং (সর্বোচ্চ কার্য/ঘণ্টা, খরচ/দিন সীমা)।
---
<!-- BEGIN:WHATS_NEW -->
### 🚀 What's New in v0.3.1 (March 2026)
| Area | Highlights |
|---|---|
| ci | add Termux (aarch64-linux-android) release target |
<!-- END:WHATS_NEW -->
### 📢 ঘোষণা
## ZeroClaw কী?
গুরুত্বপূর্ণ নোটিশের (ব্রেকিং পরিবর্তন, নিরাপত্তা পরামর্শ, রক্ষণাবেক্ষণ উইন্ডো, এবং রিলিজ ব্লকার) জন্য এই বোর্ড ব্যবহার করুন।
ZeroClaw হল একটি হালকা, মিউটেবল এবং এক্সটেনসিবল AI অ্যাসিস্ট্যান্ট ইনফ্রাস্ট্রাকচার যা রাস্টে তৈরি। এটি বিভিন্ন LLM প্রদানকারীদের (Anthropic, OpenAI, Google, Ollama, ইত্যাদি) একটি ইউনিফাইড ইন্টারফেসের মাধ্যমে সংযুক্ত করে এবং একাধিক চ্যানেল (Telegram, Matrix, CLI, ইত্যাদি) সমর্থন করে।
| তারিখ (UTC) | স্তর | নোটিশ | পদক্ষেপ |
| ---------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 2026-02-19 | _জটিল_ | আমরা `openagen/zeroclaw`, `zeroclaw.org` বা `zeroclaw.net` এর সাথে **সম্পর্কিত নই**`zeroclaw.org` এবং `zeroclaw.net` ডোমেইনগুলো বর্তমানে `openagen/zeroclaw` ফর্কের দিকে নির্দেশ করে, এবং সেই ডোমেইন/রিপোজিটরি আমাদের অফিসিয়াল ওয়েবসাইট/প্রকল্পের ছদ্মবেশ ধারণ করছে। | সেই উৎসগুলো থেকে তথ্য, বাইনারি, তহবিল সংগ্রহ, বা ঘোষণায় বিশ্বাস করবেন না। শুধুমাত্র [এই রিপোজিটরি](https://github.com/zeroclaw-labs/zeroclaw) এবং আমাদের যাচাইকৃত সোশ্যাল অ্যাকাউন্ট ব্যবহার করুন। |
| 2026-02-21 | _গুরুত্বপূর্ণ_ | আমাদের অফিসিয়াল ওয়েবসাইট এখন লাইভ: [zeroclawlabs.ai](https://zeroclawlabs.ai)। লঞ্চ প্রস্তুত করার সময় আপনার ধৈর্যের জন্য ধন্যবাদ। আমরা এখনও ছদ্মবেশ প্রচেষ্টা দেখছি, তাই কোনো বিনিয়োগ বা তহবিল সংগ্রহ কার্যকলাপে **যোগ দেবেন না** যা ZeroClaw নাম দাবি করে যদি না এটি আমাদের অফিসিয়াল চ্যানেলের মাধ্যমে প্রকাশিত হয়। | [এই রিপোজিটরি](https://github.com/zeroclaw-labs/zeroclaw) কে সত্যের একক উৎস হিসেবে ব্যবহার করুন। অফিসিয়াল আপডেটের জন্য [X (@zeroclawlabs)](https://x.com/zeroclawlabs?s=21), [Facebook (Group)](https://www.facebook.com/groups/zeroclawlabs), এবং [Reddit (r/zeroclawlabs)](https://www.reddit.com/r/zeroclawlabs/) অনুসরণ করুন। |
| 2026-02-19 | _গুরুত্বপূর্ণ_ | Anthropic 2026-02-19 তে Authentication and Credential Use শর্তাবলী আপডেট করেছে। Claude Code OAuth টোকেন (Free, Pro, Max) একচেটিয়াভাবে Claude Code এবং Claude.ai এর জন্য; Claude Free/Pro/Max থেকে OAuth টোকেন অন্য কোনো পণ্য, টুল, বা সেবায় (Agent SDK সহ) ব্যবহার অনুমোদিত নয় এবং Consumer Terms of Service লঙ্ঘন করতে পারে। | সম্ভাব্য ক্ষতি রোধ করতে অনুগ্রহ করে Claude Code OAuth ইন্টিগ্রেশন সাময়িকভাবে এড়িয়ে চলুন। মূল ধারা: [Authentication and Credential Use](https://code.claude.com/docs/en/legal-and-compliance#authentication-and-credential-use)। |
### মূল বৈশিষ্ট্যসমূহ
## প্রধান বৈশিষ্ট্য
- **🦀 রাস্টে লেখা**: উচ্চ পারফরম্যান্স, মেমোরি নিরাপত্তা, এবং জিরো-কস্ট অ্যাবস্ট্রাকশন
- **🔌 প্রদানকারী-অজ্ঞেয়বাদী**: OpenAI, Anthropic, Google Gemini, Ollama, এবং অন্যান্য সমর্থন
- **📱 মাল্টি-চ্যানেল**: Telegram, Matrix (E2EE সহ), CLI, এবং অন্যান্য
- **🧠 প্লাগেবল মেমোরি**: SQLite এবং Markdown ব্যাকএন্ড
- **🛠️ এক্সটেন্সিবল টুলস**: সহজেই কাস্টম টুল যোগ করুন
- **🔒 নিরাপত্তা-প্রথম**: রিভার্স-প্রক্সি, গোপনীয়তা-প্রথম ডিজাইন
- **ডিফল্টভাবে হালকা রানটাইম** — সাধারণ CLI এবং স্ট্যাটাস ওয়ার্কফ্লো রিলিজ বিল্ডে কয়েক-মেগাবাইট মেমোরি এনভেলপে চলে।
- **খরচ-সাশ্রয়ী ডিপ্লয়মেন্ট** — $10 বোর্ড এবং ছোট ক্লাউড ইনস্ট্যান্সের জন্য ডিজাইন করা, কোনো ভারী রানটাইম নির্ভরতা নেই।
- **দ্রুত কোল্ড স্টার্ট** — একক-বাইনারি Rust রানটাইম কমান্ড এবং ডেমন স্টার্টআপ প্রায় তাৎক্ষণিক রাখে।
- **পোর্টেবল আর্কিটেকচার** — ARM, x86, এবং RISC-V জুড়ে একটি বাইনারি যার সাথে বিনিময়যোগ্য প্রদানকারী/চ্যানেল/টুল।
- **লোকাল-ফার্স্ট Gateway** — সেশন, চ্যানেল, টুল, cron, SOPs, এবং ইভেন্টের জন্য একক কন্ট্রোল প্লেন।
- **মাল্টি-চ্যানেল ইনবক্স** — WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WebSocket, এবং আরও।
- **মাল্টি-এজেন্ট অর্কেস্ট্রেশন (Hands)** — স্বায়ত্তশাসিত এজেন্ট সোয়ার্ম যা সময়সূচী অনুযায়ী চলে এবং সময়ের সাথে আরও স্মার্ট হয়।
- **স্ট্যান্ডার্ড অপারেটিং প্রসিডিউর (SOPs)** — MQTT, webhook, cron, এবং পেরিফেরাল ট্রিগার সহ ইভেন্ট-চালিত ওয়ার্কফ্লো অটোমেশন।
- **ওয়েব ড্যাশবোর্ড** — React 19 + Vite ওয়েব UI যাতে রিয়েল-টাইম চ্যাট, মেমোরি ব্রাউজার, কনফিগ এডিটর, cron ম্যানেজার, এবং টুল ইন্সপেক্টর আছে।
- **হার্ডওয়্যার পেরিফেরাল**`Peripheral` trait এর মাধ্যমে ESP32, STM32 Nucleo, Arduino, Raspberry Pi GPIO।
- **প্রথম-শ্রেণীর টুল** — shell, ফাইল I/O, browser, git, ওয়েব fetch/search, MCP, Jira, Notion, Google Workspace, এবং 70+ আরও।
- **লাইফসাইকেল হুক** — প্রতিটি পর্যায়ে LLM কল, টুল এক্সিকিউশন, এবং বার্তা ইন্টারসেপ্ট ও পরিবর্তন করুন।
- **স্কিল প্ল্যাটফর্ম** — নিরাপত্তা অডিটিং সহ বান্ডেল, সম্প্রদায়, এবং workspace স্কিল।
- **টানেল সাপোর্ট** — রিমোট অ্যাক্সেসের জন্য Cloudflare, Tailscale, ngrok, OpenVPN, এবং কাস্টম টানেল।
---
### দলগুলো কেন ZeroClaw বেছে নেয়
## দ্রুত শুরু
- **ডিফল্টভাবে হালকা:** ছোট Rust বাইনারি, দ্রুত স্টার্টআপ, কম মেমোরি ফুটপ্রিন্ট।
- **ডিজাইনে নিরাপদ:** পেয়ারিং, কঠোর স্যান্ডবক্সিং, স্পষ্ট অনুমতি তালিকা, workspace স্কোপিং।
- **সম্পূর্ণ বিনিময়যোগ্য:** মূল সিস্টেমগুলো traits (providers, channels, tools, memory, tunnels)।
- **কোনো লক-ইন নেই:** OpenAI-সামঞ্জস্যপূর্ণ প্রদানকারী সমর্থন + প্লাগেবল কাস্টম এন্ডপয়েন্ট।
### প্রয়োজনীয়তা
## বেঞ্চমার্ক স্ন্যাপশট (ZeroClaw বনাম OpenClaw, পুনরুৎপাদনযোগ্য)
- রাস্ট 1.70+
- একটি LLM প্রদানকারী API কী (Anthropic, OpenAI, ইত্যাদি)
স্থানীয় মেশিন দ্রুত বেঞ্চমার্ক (macOS arm64, ফেব্রুয়ারি 2026) 0.8GHz এজ হার্ডওয়্যারের জন্য স্বাভাবিকীকৃত।
| | OpenClaw | NanoBot | PicoClaw | ZeroClaw 🦀 |
| ------------------------- | ------------- | -------------- | --------------- | -------------------- |
| **ভাষা** | TypeScript | Python | Go | **Rust** |
| **RAM** | > 1GB | > 100MB | < 10MB | **< 5MB** |
| **স্টার্টআপ (0.8GHz কোর)** | > 500s | > 30s | < 1s | **< 10ms** |
| **বাইনারি আকার** | ~28MB (dist) | N/A (Scripts) | ~8MB | **~8.8 MB** |
| **খরচ** | Mac Mini $599 | Linux SBC ~$50 | Linux Board $10 | **যেকোনো হার্ডওয়্যার $10** |
> নোট: ZeroClaw ফলাফল `/usr/bin/time -l` ব্যবহার করে রিলিজ বিল্ডে পরিমাপ করা হয়েছে। OpenClaw এর Node.js রানটাইম প্রয়োজন (সাধারণত ~390MB অতিরিক্ত মেমোরি ওভারহেড), যেখানে NanoBot এর Python রানটাইম প্রয়োজন। PicoClaw এবং ZeroClaw স্ট্যাটিক বাইনারি। উপরের RAM পরিসংখ্যান রানটাইম মেমোরি; বিল্ড-টাইম কম্পাইলেশন প্রয়োজনীয়তা বেশি।
<p align="center">
<img src="docs/assets/zeroclaw-comparison.jpeg" alt="ZeroClaw vs OpenClaw Comparison" width="800" />
</p>
### পুনরুৎপাদনযোগ্য স্থানীয় পরিমাপ
### ইনস্টলেশন
```bash
cargo build --release
ls -lh target/release/zeroclaw
# রিপোজিটরি ক্লোন করুন
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
/usr/bin/time -l target/release/zeroclaw --help
/usr/bin/time -l target/release/zeroclaw status
# বিল্ড করুন
cargo build --release
# চালান
cargo run --release
```
## এখন পর্যন্ত আমরা যা তৈরি করেছি
### Docker দিয়ে
### কোর প্ল্যাটফর্ম
- Gateway HTTP/WS/SSE কন্ট্রোল প্লেন যাতে সেশন, উপস্থিতি, কনফিগ, cron, webhooks, ওয়েব ড্যাশবোর্ড, এবং পেয়ারিং আছে।
- CLI সারফেস: `gateway`, `agent`, `onboard`, `doctor`, `status`, `service`, `migrate`, `auth`, `cron`, `channel`, `skills`
- এজেন্ট অর্কেস্ট্রেশন লুপ যাতে টুল ডিসপ্যাচ, প্রম্পট নির্মাণ, বার্তা শ্রেণীবিভাগ, এবং মেমোরি লোডিং আছে।
- নিরাপত্তা নীতি প্রয়োগ, স্বায়ত্তশাসন স্তর, এবং অনুমোদন গেটিং সহ সেশন মডেল।
- 20+ LLM ব্যাকএন্ড জুড়ে ফেইলওভার, রিট্রাই, এবং মডেল রাউটিং সহ রেজিলিয়েন্ট প্রদানকারী র‍্যাপার।
### চ্যানেল
চ্যানেল: WhatsApp (নেটিভ), Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, DingTalk, Lark, Mattermost, Nextcloud Talk, Nostr, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WATI, Mochat, Linq, Notion, WebSocket, ClawdTalk।
ফিচার-গেটেড: Matrix (`channel-matrix`), Lark (`channel-lark`), Nostr (`channel-nostr`)।
### ওয়েব ড্যাশবোর্ড
React 19 + Vite 6 + Tailwind CSS 4 ওয়েব ড্যাশবোর্ড সরাসরি Gateway থেকে পরিবেশিত:
- **ড্যাশবোর্ড** — সিস্টেম ওভারভিউ, স্বাস্থ্য অবস্থা, আপটাইম, খরচ ট্র্যাকিং
- **এজেন্ট চ্যাট** — এজেন্টের সাথে ইন্টারেক্টিভ চ্যাট
- **মেমোরি** — মেমোরি এন্ট্রি ব্রাউজ ও পরিচালনা
- **কনফিগ** — কনফিগারেশন দেখুন ও সম্পাদনা করুন
- **Cron** — নির্ধারিত কাজ পরিচালনা
- **টুলস** — উপলব্ধ টুল ব্রাউজ করুন
- **লগস** — এজেন্ট কার্যকলাপ লগ দেখুন
- **খরচ** — টোকেন ব্যবহার এবং খরচ ট্র্যাকিং
- **ডক্টর** — সিস্টেম স্বাস্থ্য ডায়াগনস্টিকস
- **ইন্টিগ্রেশন** — ইন্টিগ্রেশন অবস্থা এবং সেটআপ
- **পেয়ারিং** — ডিভাইস পেয়ারিং পরিচালনা
### ফার্মওয়্যার টার্গেট
| টার্গেট | প্ল্যাটফর্ম | উদ্দেশ্য |
|--------|----------|---------|
| ESP32 | Espressif ESP32 | ওয়্যারলেস পেরিফেরাল এজেন্ট |
| ESP32-UI | ESP32 + Display | ভিজ্যুয়াল ইন্টারফেস সহ এজেন্ট |
| STM32 Nucleo | STM32 (ARM Cortex-M) | ইন্ডাস্ট্রিয়াল পেরিফেরাল |
| Arduino | Arduino | বেসিক সেন্সর/অ্যাকচুয়েটর ব্রিজ |
| Uno Q Bridge | Arduino Uno | এজেন্টের জন্য সিরিয়াল ব্রিজ |
### টুল + অটোমেশন
- **কোর:** shell, ফাইল read/write/edit, git অপারেশন, glob search, content search
- **ওয়েব:** ব্রাউজার নিয়ন্ত্রণ, web fetch, web search, screenshot, image info, PDF read
- **ইন্টিগ্রেশন:** Jira, Notion, Google Workspace, Microsoft 365, LinkedIn, Composio, Pushover
- **MCP:** Model Context Protocol টুল র‍্যাপার + ডিফার্ড টুল সেট
- **শিডিউলিং:** cron add/remove/update/run, schedule tool
- **মেমোরি:** recall, store, forget, knowledge, project intel
- **উন্নত:** delegate (এজেন্ট-টু-এজেন্ট), swarm, model switch/routing, security ops, cloud ops
- **হার্ডওয়্যার:** board info, memory map, memory read (ফিচার-গেটেড)
### রানটাইম + নিরাপত্তা
- **স্বায়ত্তশাসন স্তর:** ReadOnly, Supervised (ডিফল্ট), Full।
- **স্যান্ডবক্সিং:** workspace আইসোলেশন, পাথ ট্রাভার্সাল ব্লকিং, কমান্ড অনুমতি তালিকা, নিষিদ্ধ পাথ, Landlock (Linux), Bubblewrap।
- **রেট লিমিটিং:** প্রতি ঘণ্টায় সর্বোচ্চ কার্য, প্রতি দিনে সর্বোচ্চ খরচ (কনফিগারযোগ্য)।
- **অনুমোদন গেটিং:** মাঝারি/উচ্চ ঝুঁকি অপারেশনের জন্য ইন্টারেক্টিভ অনুমোদন।
- **ই-স্টপ:** জরুরি শাটডাউন ক্ষমতা।
- **129+ নিরাপত্তা পরীক্ষা** স্বয়ংক্রিয় CI তে।
### অপস + প্যাকেজিং
- ওয়েব ড্যাশবোর্ড সরাসরি Gateway থেকে পরিবেশিত।
- টানেল সাপোর্ট: Cloudflare, Tailscale, ngrok, OpenVPN, কাস্টম কমান্ড।
- কন্টেইনারাইজড এক্সিকিউশনের জন্য Docker রানটাইম অ্যাডাপ্টার।
- CI/CD: বেটা (পুশে অটো) → স্টেবল (ম্যানুয়াল ডিসপ্যাচ) → Docker, crates.io, Scoop, AUR, Homebrew, টুইট।
- Linux (x86_64, aarch64, armv7), macOS (x86_64, aarch64), Windows (x86_64) এর জন্য প্রি-বিল্ট বাইনারি।
```bash
docker run -d \
--name zeroclaw \
-e ANTHROPIC_API_KEY=your_key \
-v zeroclaw-data:/app/data \
zeroclaw/zeroclaw:latest
```
---
## কনফিগারেশন
ন্যূনতম `~/.zeroclaw/config.toml`:
ZeroClaw একটি YAML কনফিগারেশন ফাইল ব্যবহার করে। ডিফল্টরূপে, এটি `config.yaml` দেখে।
```toml
default_provider = "anthropic"
api_key = "sk-ant-..."
```yaml
# ডিফল্ট প্রদানকারী
provider: anthropic
# প্রদানকারী কনফিগারেশন
providers:
anthropic:
api_key: ${ANTHROPIC_API_KEY}
model: claude-3-5-sonnet-20241022
openai:
api_key: ${OPENAI_API_KEY}
model: gpt-4o
# মেমোরি কনফিগারেশন
memory:
backend: sqlite
path: data/memory.db
# চ্যানেল কনফিগারেশন
channels:
telegram:
token: ${TELEGRAM_BOT_TOKEN}
```
সম্পূর্ণ কনফিগারেশন রেফারেন্স: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md)।
### চ্যানেল কনফিগারেশন
**Telegram:**
```toml
[channels.telegram]
bot_token = "123456:ABC-DEF..."
```
**Discord:**
```toml
[channels.discord]
token = "your-bot-token"
```
**Slack:**
```toml
[channels.slack]
bot_token = "xoxb-..."
app_token = "xapp-..."
```
**WhatsApp:**
```toml
[channels.whatsapp]
enabled = true
```
**Matrix:**
```toml
[channels.matrix]
homeserver_url = "https://matrix.org"
username = "@bot:matrix.org"
password = "..."
```
**Signal:**
```toml
[channels.signal]
phone_number = "+1234567890"
```
### টানেল কনফিগারেশন
```toml
[tunnel]
kind = "cloudflare" # or "tailscale", "ngrok", "openvpn", "custom", "none"
```
বিস্তারিত: [চ্যানেল রেফারেন্স](docs/reference/api/channels-reference.md) · [কনফিগ রেফারেন্স](docs/reference/api/config-reference.md)
### রানটাইম সাপোর্ট (বর্তমান)
- **`native`** (ডিফল্ট) — সরাসরি প্রসেস এক্সিকিউশন, দ্রুততম পথ, বিশ্বস্ত পরিবেশের জন্য আদর্শ।
- **`docker`** — সম্পূর্ণ কন্টেইনার আইসোলেশন, প্রয়োগকৃত নিরাপত্তা নীতি, Docker প্রয়োজন।
কঠোর স্যান্ডবক্সিং বা নেটওয়ার্ক আইসোলেশনের জন্য `runtime.kind = "docker"` সেট করুন।
## সাবস্ক্রিপশন অথ (OpenAI Codex / Claude Code / Gemini)
ZeroClaw সাবস্ক্রিপশন-নেটিভ অথ প্রোফাইল সমর্থন করে (মাল্টি-অ্যাকাউন্ট, বিশ্রামে এনক্রিপ্টেড)।
- স্টোর ফাইল: `~/.zeroclaw/auth-profiles.json`
- এনক্রিপশন কী: `~/.zeroclaw/.secret_key`
- প্রোফাইল id ফরম্যাট: `<provider>:<profile_name>` (উদাহরণ: `openai-codex:work`)
```bash
# OpenAI Codex OAuth (ChatGPT subscription)
zeroclaw auth login --provider openai-codex --device-code
# Gemini OAuth
zeroclaw auth login --provider gemini --profile default
# Anthropic setup-token
zeroclaw auth paste-token --provider anthropic --profile default --auth-kind authorization
# Check / refresh / switch profile
zeroclaw auth status
zeroclaw auth refresh --provider openai-codex --profile default
zeroclaw auth use --provider openai-codex --profile work
# Run the agent with subscription auth
zeroclaw agent --provider openai-codex -m "hello"
zeroclaw agent --provider anthropic -m "hello"
```
## এজেন্ট workspace + স্কিল
Workspace রুট: `~/.zeroclaw/workspace/` (কনফিগের মাধ্যমে কনফিগারযোগ্য)।
ইনজেক্ট করা প্রম্পট ফাইল:
- `IDENTITY.md` — এজেন্টের ব্যক্তিত্ব এবং ভূমিকা
- `USER.md` — ব্যবহারকারীর প্রসঙ্গ এবং পছন্দ
- `MEMORY.md` — দীর্ঘমেয়াদী তথ্য এবং শিক্ষা
- `AGENTS.md` — সেশন কনভেনশন এবং ইনিশিয়ালাইজেশন নিয়ম
- `SOUL.md` — মূল পরিচয় এবং পরিচালন নীতি
স্কিল: `~/.zeroclaw/workspace/skills/<skill>/SKILL.md` বা `SKILL.toml`
```bash
# List installed skills
zeroclaw skills list
# Install from git
zeroclaw skills install https://github.com/user/my-skill.git
# Security audit before install
zeroclaw skills audit https://github.com/user/my-skill.git
# Remove a skill
zeroclaw skills remove my-skill
```
## CLI কমান্ড
```bash
# Workspace management
zeroclaw onboard # Guided setup wizard
zeroclaw status # Show daemon/agent status
zeroclaw doctor # Run system diagnostics
# Gateway + daemon
zeroclaw gateway # Start gateway server (127.0.0.1:42617)
zeroclaw daemon # Start full autonomous runtime
# Agent
zeroclaw agent # Interactive chat mode
zeroclaw agent -m "message" # Single message mode
# Service management
zeroclaw service install # Install as OS service (launchd/systemd)
zeroclaw service start|stop|restart|status
# Channels
zeroclaw channel list # List configured channels
zeroclaw channel doctor # Check channel health
zeroclaw channel bind-telegram 123456789
# Cron + scheduling
zeroclaw cron list # List scheduled jobs
zeroclaw cron add "*/5 * * * *" --prompt "Check system health"
zeroclaw cron remove <id>
# Memory
zeroclaw memory list # List memory entries
zeroclaw memory get <key> # Retrieve a memory
zeroclaw memory stats # Memory statistics
# Auth profiles
zeroclaw auth login --provider <name>
zeroclaw auth status
zeroclaw auth use --provider <name> --profile <profile>
# Hardware peripherals
zeroclaw hardware discover # Scan for connected devices
zeroclaw peripheral list # List connected peripherals
zeroclaw peripheral flash # Flash firmware to device
# Migration
zeroclaw migrate openclaw --dry-run
zeroclaw migrate openclaw
# Shell completions
source <(zeroclaw completions bash)
zeroclaw completions zsh > ~/.zfunc/_zeroclaw
```
সম্পূর্ণ কমান্ড রেফারেন্স: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
<!-- markdownlint-disable MD001 MD024 -->
## পূর্বশর্ত
<details>
<summary><strong>Windows</strong></summary>
#### প্রয়োজনীয়
1. **Visual Studio Build Tools** (MSVC লিঙ্কার এবং Windows SDK প্রদান করে):
```powershell
winget install Microsoft.VisualStudio.2022.BuildTools
```
ইনস্টলেশনের সময় (বা Visual Studio Installer এর মাধ্যমে), **"Desktop development with C++"** ওয়ার্কলোড নির্বাচন করুন।
2. **Rust টুলচেইন:**
```powershell
winget install Rustlang.Rustup
```
ইনস্টলেশনের পরে, একটি নতুন টার্মিনাল খুলুন এবং `rustup default stable` চালান স্থিতিশীল টুলচেইন সক্রিয় করতে।
3. **যাচাই করুন** উভয়ই কাজ করছে:
```powershell
rustc --version
cargo --version
```
#### ঐচ্ছিক
- **Docker Desktop** — শুধুমাত্র [Docker স্যান্ডবক্সড রানটাইম](#রানটাইম-সাপোর্ট-বর্তমান) (`runtime.kind = "docker"`) ব্যবহার করলে প্রয়োজন। `winget install Docker.DockerDesktop` দিয়ে ইনস্টল করুন।
</details>
<details>
<summary><strong>Linux / macOS</strong></summary>
#### প্রয়োজনীয়
1. **বিল্ড এসেনশিয়ালস:**
- **Linux (Debian/Ubuntu):** `sudo apt install build-essential pkg-config`
- **Linux (Fedora/RHEL):** `sudo dnf group install development-tools && sudo dnf install pkg-config`
- **macOS:** Xcode Command Line Tools ইনস্টল করুন: `xcode-select --install`
2. **Rust টুলচেইন:**
```bash
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
```
বিস্তারিতের জন্য [rustup.rs](https://rustup.rs) দেখুন।
3. **যাচাই করুন** উভয়ই কাজ করছে:
```bash
rustc --version
cargo --version
```
#### এক-লাইন ইনস্টলার
অথবা উপরের ধাপগুলো এড়িয়ে একটি কমান্ডে সবকিছু (সিস্টেম deps, Rust, ZeroClaw) ইনস্টল করুন:
```bash
curl -LsSf https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/install.sh | bash
```
#### কম্পাইলেশন রিসোর্স প্রয়োজনীয়তা
সোর্স থেকে বিল্ড করতে ফলাফল বাইনারি চালানোর চেয়ে বেশি রিসোর্স প্রয়োজন:
| রিসোর্স | ন্যূনতম | প্রস্তাবিত |
| -------------- | ------- | ----------- |
| **RAM + swap** | 2 GB | 4 GB+ |
| **ফ্রি ডিস্ক** | 6 GB | 10 GB+ |
আপনার হোস্ট ন্যূনতমের নিচে হলে, প্রি-বিল্ট বাইনারি ব্যবহার করুন:
```bash
./install.sh --prefer-prebuilt
```
সোর্স ফলব্যাক ছাড়া শুধুমাত্র বাইনারি ইনস্টল করতে:
```bash
./install.sh --prebuilt-only
```
#### ঐচ্ছিক
- **Docker** — শুধুমাত্র [Docker স্যান্ডবক্সড রানটাইম](#রানটাইম-সাপোর্ট-বর্তমান) (`runtime.kind = "docker"`) ব্যবহার করলে প্রয়োজন। আপনার প্যাকেজ ম্যানেজার বা [docker.com](https://docs.docker.com/engine/install/) থেকে ইনস্টল করুন।
> **নোট:** ডিফল্ট `cargo build --release` পিক কম্পাইল প্রেশার কমাতে `codegen-units=1` ব্যবহার করে। শক্তিশালী মেশিনে দ্রুত বিল্ডের জন্য, `cargo build --profile release-fast` ব্যবহার করুন।
</details>
<!-- markdownlint-enable MD001 MD024 -->
### প্রি-বিল্ট বাইনারি
রিলিজ অ্যাসেট প্রকাশিত হয়:
- Linux: `x86_64`, `aarch64`, `armv7`
- macOS: `x86_64`, `aarch64`
- Windows: `x86_64`
সর্বশেষ অ্যাসেট ডাউনলোড করুন:
<https://github.com/zeroclaw-labs/zeroclaw/releases/latest>
---
## ডকুমেন্টেশন
অনবোর্ডিং প্রবাহের পরে এবং গভীর রেফারেন্স চাইলে এগুলো ব্যবহার করুন।
বিস্তারিত ডকুমেন্টেশনের জন্য, দেখুন:
- নেভিগেশন এবং "কোথায় কী" এর জন্য [ডকুমেন্টেশন ইনডেক্স](docs/README.md) দিয়ে শুরু করুন।
- সম্পূর্ণ সিস্টেম মডেলের জন্য [আর্কিটেকচার ওভারভিউ](docs/architecture.md) পড়ুন।
- প্রতিটি কী এবং উদাহরণ প্রয়োজন হলে [কনফিগারেশন রেফারেন্স](docs/reference/api/config-reference.md) ব্যবহার করুন।
- [অপারেশনাল রানবুক](docs/ops/operations-runbook.md) অনুযায়ী Gateway চালান।
- গাইডেড সেটআপের জন্য [ZeroClaw Onboard](#দ্রুত-শুরু) অনুসরণ করুন।
- [সমস্যা সমাধান গাইড](docs/ops/troubleshooting.md) দিয়ে সাধারণ ব্যর্থতা ডিবাগ করুন।
- কিছু এক্সপোজ করার আগে [নিরাপত্তা নির্দেশনা](docs/security/README.md) পর্যালোচনা করুন।
- [ডকুমেন্টেশন হাব](docs/README.md)
- [কমান্ড রেফারেন্স](docs/commands-reference.md)
- [প্রদানকারী রেফারেন্স](docs/providers-reference.md)
- [চ্যানেল রেফারেন্স](docs/channels-reference.md)
- [কনফিগারেশন রেফারেন্স](docs/config-reference.md)
### রেফারেন্স ডকুমেন্টেশন
- ডকুমেন্টেশন হাব: [docs/README.md](docs/README.md)
- একীভূত ডকুমেন্টেশন TOC: [docs/SUMMARY.md](docs/SUMMARY.md)
- কমান্ড রেফারেন্স: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
- কনফিগ রেফারেন্স: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md)
- প্রদানকারী রেফারেন্স: [docs/reference/api/providers-reference.md](docs/reference/api/providers-reference.md)
- চ্যানেল রেফারেন্স: [docs/reference/api/channels-reference.md](docs/reference/api/channels-reference.md)
- অপারেশনস রানবুক: [docs/ops/operations-runbook.md](docs/ops/operations-runbook.md)
- সমস্যা সমাধান: [docs/ops/troubleshooting.md](docs/ops/troubleshooting.md)
### সহযোগিতা ডকুমেন্টেশন
- অবদান গাইড: [CONTRIBUTING.md](CONTRIBUTING.md)
- PR ওয়ার্কফ্লো নীতি: [docs/contributing/pr-workflow.md](docs/contributing/pr-workflow.md)
- CI ওয়ার্কফ্লো গাইড: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- পর্যালোচক প্লেবুক: [docs/contributing/reviewer-playbook.md](docs/contributing/reviewer-playbook.md)
- নিরাপত্তা প্রকাশ নীতি: [SECURITY.md](SECURITY.md)
- ডকুমেন্টেশন টেমপ্লেট: [docs/contributing/doc-template.md](docs/contributing/doc-template.md)
### ডিপ্লয়মেন্ট + অপারেশন
- নেটওয়ার্ক ডিপ্লয়মেন্ট গাইড: [docs/ops/network-deployment.md](docs/ops/network-deployment.md)
- প্রক্সি এজেন্ট প্লেবুক: [docs/ops/proxy-agent-playbook.md](docs/ops/proxy-agent-playbook.md)
- হার্ডওয়্যার গাইড: [docs/hardware/README.md](docs/hardware/README.md)
## Smooth Crab 🦀
ZeroClaw smooth crab 🦀 এর জন্য তৈরি হয়েছিল, একটি দ্রুত এবং দক্ষ AI সহকারী। Argenis De La Rosa এবং সম্প্রদায় দ্বারা নির্মিত।
- [zeroclawlabs.ai](https://zeroclawlabs.ai)
- [@zeroclawlabs](https://x.com/zeroclawlabs)
## ZeroClaw সমর্থন করুন
ZeroClaw আপনার কাজে সাহায্য করলে এবং আপনি চলমান উন্নয়ন সমর্থন করতে চাইলে, এখানে দান করতে পারেন:
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=for-the-badge&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
### 🙏 বিশেষ ধন্যবাদ
যে সম্প্রদায় এবং প্রতিষ্ঠানগুলো এই ওপেন-সোর্স কাজকে অনুপ্রাণিত এবং শক্তি দেয় তাদের প্রতি আন্তরিক ধন্যবাদ:
- **Harvard University** — বৌদ্ধিক কৌতূহল লালন এবং সম্ভাবনার সীমানা প্রসারিত করার জন্য।
- **MIT** — খোলা জ্ঞান, ওপেন সোর্স, এবং প্রযুক্তি সবার জন্য অ্যাক্সেসযোগ্য হওয়া উচিত এই বিশ্বাসের চ্যাম্পিয়ন হওয়ার জন্য।
- **Sundai Club** — সম্প্রদায়, শক্তি, এবং গুরুত্বপূর্ণ জিনিস তৈরির অদম্য চেষ্টার জন্য।
- **বিশ্ব এবং তার বাইরে** 🌍✨ — প্রতিটি অবদানকারী, স্বপ্নদ্রষ্টা, এবং নির্মাতার জন্য যারা ওপেন সোর্সকে ভালোর শক্তি বানাচ্ছে। এটি আপনার জন্য।
আমরা খোলামেলাভাবে তৈরি করছি কারণ সেরা ধারণাগুলো সর্বত্র থেকে আসে। আপনি যদি এটি পড়ছেন, আপনি এর অংশ। স্বাগতম। 🦀❤️
---
## অবদান
ZeroClaw এ নতুন? [`good first issue`](https://github.com/zeroclaw-labs/zeroclaw/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) লেবেলযুক্ত ইস্যু খুঁজুন — কিভাবে শুরু করতে হয় তা জানতে আমাদের [অবদান গাইড](CONTRIBUTING.md#first-time-contributors) দেখুন। AI/vibe-coded PR স্বাগত! 🤖
[CONTRIBUTING.md](CONTRIBUTING.md) এবং [CLA.md](docs/contributing/cla.md) দেখুন। একটি trait বাস্তবায়ন করুন, PR জমা দিন:
- CI ওয়ার্কফ্লো গাইড: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- নতুন `Provider``src/providers/`
- নতুন `Channel``src/channels/`
- নতুন `Observer``src/observability/`
- নতুন `Tool``src/tools/`
- নতুন `Memory``src/memory/`
- নতুন `Tunnel``src/tunnel/`
- নতুন `Peripheral``src/peripherals/`
- নতুন `Skill``~/.zeroclaw/workspace/skills/<name>/`
<!-- BEGIN:RECENT_CONTRIBUTORS -->
<!-- END:RECENT_CONTRIBUTORS -->
## ⚠️ অফিসিয়াল রিপোজিটরি এবং ছদ্মবেশ সতর্কতা
**এটিই একমাত্র অফিসিয়াল ZeroClaw রিপোজিটরি:**
> https://github.com/zeroclaw-labs/zeroclaw
অন্য কোনো রিপোজিটরি, সংগঠন, ডোমেইন, বা প্যাকেজ যা "ZeroClaw" বলে দাবি করে বা ZeroClaw Labs এর সাথে সংযুক্তি ইঙ্গিত করে তা **অননুমোদিত এবং এই প্রকল্পের সাথে সম্পর্কিত নয়**। পরিচিত অননুমোদিত ফর্ক [TRADEMARK.md](docs/maintainers/trademark.md) তে তালিকাভুক্ত করা হবে।
আপনি ছদ্মবেশ বা ট্রেডমার্ক অপব্যবহারের সম্মুখীন হলে, অনুগ্রহ করে [একটি ইস্যু খুলুন](https://github.com/zeroclaw-labs/zeroclaw/issues)।
অবদান স্বাগত! অনুগ্রহ করে [অবদান গাইড](CONTRIBUTING.md) পড়ুন।
---
## লাইসেন্স
ZeroClaw সর্বোচ্চ উন্মুক্ততা এবং অবদানকারী সুরক্ষার জন্য দ্বৈত-লাইসেন্সপ্রাপ্ত:
এই প্রজেক্টটি ডুয়াল লাইসেন্সপ্রাপ্ত:
| লাইসেন্স | ব্যবহারের ক্ষেত্র |
|---|---|
| [MIT](LICENSE-MIT) | ওপেন-সোর্স, গবেষণা, একাডেমিক, ব্যক্তিগত ব্যবহার |
| [Apache 2.0](LICENSE-APACHE) | পেটেন্ট সুরক্ষা, প্রাতিষ্ঠানিক, বাণিজ্যিক ডিপ্লয়মেন্ট |
- MIT লাইসেন্স
- Apache লাইসেন্স, সংস্করণ 2.0
আপনি যেকোনো লাইসেন্স বেছে নিতে পারেন। **অবদানকারীরা স্বয়ংক্রিয়ভাবে উভয়ের অধীনে অধিকার প্রদান করে** — সম্পূর্ণ অবদানকারী চুক্তির জন্য [CLA.md](docs/contributing/cla.md) দেখুন।
### ট্রেডমার্ক
**ZeroClaw** নাম এবং লোগো ZeroClaw Labs এর ট্রেডমার্ক। এই লাইসেন্স সমর্থন বা সংযুক্তি ইঙ্গিত করতে এগুলো ব্যবহারের অনুমতি দেয় না। অনুমোদিত এবং নিষিদ্ধ ব্যবহারের জন্য [TRADEMARK.md](docs/maintainers/trademark.md) দেখুন।
### অবদানকারী সুরক্ষা
- আপনি আপনার অবদানের **কপিরাইট ধরে রাখেন**
- **পেটেন্ট অনুদান** (Apache 2.0) আপনাকে অন্যান্য অবদানকারীদের পেটেন্ট দাবি থেকে রক্ষা করে
- আপনার অবদান কমিট ইতিহাস এবং [NOTICE](NOTICE) এ **স্থায়ীভাবে বিশেষিত**
- অবদান করে কোনো ট্রেডমার্ক অধিকার হস্তান্তরিত হয় না
বিস্তারিতের জন্য [LICENSE-APACHE](LICENSE-APACHE) এবং [LICENSE-MIT](LICENSE-MIT) দেখুন।
---
**ZeroClaw** — শূন্য ওভারহেড। শূন্য আপস। যেকোনো জায়গায় ডিপ্লয় করুন। যেকিছু বিনিময় করুন। 🦀
## কমিউনিটি
## অবদানকারীরা
- [Telegram](https://t.me/zeroclawlabs)
- [Facebook Group](https://www.facebook.com/groups/zeroclaw)
- [WeChat Group](https://zeroclawlabs.cn/group.jpg)
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors">
<img src="https://contrib.rocks/image?repo=zeroclaw-labs/zeroclaw" alt="ZeroClaw contributors" />
</a>
---
এই তালিকা GitHub অবদানকারী গ্রাফ থেকে তৈরি হয় এবং স্বয়ংক্রিয়ভাবে আপডেট হয়।
## স্পনসর
## স্টার ইতিহাস
যদি ZeroClaw আপনার জন্য উপযোগী হয়, তবে অনুগ্রহ করে আমাদের একটি কফি কিনতে বিবেচনা করুন:
<p align="center">
<a href="https://www.star-history.com/#zeroclaw-labs/zeroclaw&type=date&legend=top-left">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&theme=dark&legend=top-left" />
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
</picture>
</a>
</p>
[![Buy Me a Coffee](https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee)](https://buymeacoffee.com/argenistherose)
<!-- BEGIN:RECENT_CONTRIBUTORS -->
### 🌟 Recent Contributors (v0.3.1)
3 contributors shipped features, fixes, and improvements in this release cycle:
- **Argenis**
- **argenis de la rosa**
- **Claude Opus 4.6**
Thank you to everyone who opened issues, reviewed PRs, translated docs, and helped test. Every contribution matters. 🦀
<!-- END:RECENT_CONTRIBUTORS -->

File diff suppressed because it is too large Load Diff

View File

@ -1,29 +1,23 @@
<p align="center">
<img src="https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/docs/assets/zeroclaw-banner.png" alt="ZeroClaw" width="600" />
<img src="zeroclaw.png" alt="ZeroClaw" width="200" />
</p>
<h1 align="center">🦀 ZeroClaw — Personlig AI-assistent</h1>
<h1 align="center">ZeroClaw 🦀</h1>
<p align="center">
<strong>Nul overhead. Nul kompromis. 100% Rust. 100% Agnostisk.</strong><br>
⚡️ <strong>Korer pa $10 hardware med <5MB RAM: Det er 99% mindre hukommelse end OpenClaw og 98% billigere end en Mac mini!</strong>
⚡️ <strong>Kører på $10 hardware med <5MB RAM: Det er 99% mindre hukommelse end OpenClaw og 98% billigere end en Mac mini!</strong>
</p>
<p align="center">
<a href="LICENSE-APACHE"><img src="https://img.shields.io/badge/license-MIT%20OR%20Apache%202.0-blue.svg" alt="License: MIT OR Apache-2.0" /></a>
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors"><img src="https://img.shields.io/github/contributors/zeroclaw-labs/zeroclaw?color=green" alt="Contributors" /></a>
<a href="NOTICE"><img src="https://img.shields.io/badge/contributors-27+-green.svg" alt="Contributors" /></a>
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
<a href="https://x.com/zeroclawlabs?s=21"><img src="https://img.shields.io/badge/X-%40zeroclawlabs-000000?style=flat&logo=x&logoColor=white" alt="X: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclawlabs"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
<a href="https://discord.com/invite/wDshRVqRjx"><img src="https://img.shields.io/badge/Discord-Join-5865F2?style=flat&logo=discord&logoColor=white" alt="Discord" /></a>
<a href="https://www.instagram.com/therealzeroclaw"><img src="https://img.shields.io/badge/Instagram-%40therealzeroclaw-E4405F?style=flat&logo=instagram&logoColor=white" alt="Instagram: @therealzeroclaw" /></a>
<a href="https://www.tiktok.com/@zeroclawlabs"><img src="https://img.shields.io/badge/TikTok-%40zeroclawlabs-000000?style=flat&logo=tiktok&logoColor=white" alt="TikTok: @zeroclawlabs" /></a>
<a href="https://www.rednote.com/user/profile/69b735e6000000002603927e"><img src="https://img.shields.io/badge/RedNote-Official-FF2442?style=flat" alt="RedNote" /></a>
<a href="https://www.reddit.com/r/zeroclawlabs/"><img src="https://img.shields.io/badge/Reddit-r%2Fzeroclawlabs-FF4500?style=flat&logo=reddit&logoColor=white" alt="Reddit: r/zeroclawlabs" /></a>
</p>
<p align="center">
Bygget af studerende og medlemmer af Harvard-, MIT- og Sundai.Club-faellesskaberne.
<a href="https://zeroclawlabs.cn/group.jpg"><img src="https://img.shields.io/badge/WeChat-Group-B7D7A8?logo=wechat&logoColor=white" alt="WeChat Group" /></a>
<a href="https://www.xiaohongshu.com/user/profile/67cbfc43000000000d008307?xsec_token=AB73VnYnGNx5y36EtnnZfGmAmS-6Wzv8WMuGpfwfkg6Yc%3D&xsec_source=pc_search"><img src="https://img.shields.io/badge/Xiaohongshu-Official-FF2442?style=flat" alt="Xiaohongshu: Official" /></a>
<a href="https://t.me/zeroclawlabs"><img src="https://img.shields.io/badge/Telegram-%40zeroclawlabs-26A5E4?style=flat&logo=telegram&logoColor=white" alt="Telegram: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclaw"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
</p>
<p align="center">
@ -61,695 +55,149 @@ Bygget af studerende og medlemmer af Harvard-, MIT- og Sundai.Club-faellesskaber
<a href="README.nb.md">🇳🇴 Norsk</a>
</p>
ZeroClaw er en personlig AI-assistent, du korer pa dine egne enheder. Den svarer dig pa de kanaler, du allerede bruger (WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work og flere). Den har et web-dashboard til realtidsstyring og kan forbindes til hardware-periferier (ESP32, STM32, Arduino, Raspberry Pi). Gateway'en er blot kontrolplanet — produktet er assistenten.
Hvis du vil have en personlig, enkeltbruger-assistent der foeles lokal, hurtig og altid taendt, er dette den.
<p align="center">
<a href="https://zeroclawlabs.ai">Hjemmeside</a> ·
<a href="docs/README.md">Dokumentation</a> ·
<a href="docs/architecture.md">Arkitektur</a> ·
<a href="#hurtig-start-tldr">Kom i gang</a> ·
<a href="#migrering-fra-openclaw">Migrering fra OpenClaw</a> ·
<a href="docs/ops/troubleshooting.md">Fejlsoegning</a> ·
<a href="https://discord.com/invite/wDshRVqRjx">Discord</a>
</p>
> **Anbefalet opsaetning:** kor `zeroclaw onboard` i din terminal. ZeroClaw Onboard guider dig trin for trin gennem opsaetning af gateway, arbejdsomrade, kanaler og udbyder. Det er den anbefalede opsaetningssti og virker pa macOS, Linux og Windows (via WSL2). Ny installation? Start her: [Kom i gang](#hurtig-start-tldr)
### Abonnementsgodkendelse (OAuth)
- **OpenAI Codex** (ChatGPT-abonnement)
- **Gemini** (Google OAuth)
- **Anthropic** (API-noegle eller godkendelsestoken)
Modelnotat: selvom mange udbydere/modeller understoettes, brug den staerkeste nyeste-generations model tilgaengelig for dig for den bedste oplevelse. Se [Onboarding](#hurtig-start-tldr).
Modelkonfiguration + CLI: [Udbyderreference](docs/reference/api/providers-reference.md)
Auth-profilrotation (OAuth vs API-noegler) + failover: [Model-failover](docs/reference/api/providers-reference.md)
## Installation (anbefalet)
Koerselsmiljoe: Rust stable toolchain. Enkelt binaer, ingen koerselsmiljoafhaengigheder.
### Homebrew (macOS/Linuxbrew)
```bash
brew install zeroclaw
```
### Et-klik-installation
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./install.sh
```
`zeroclaw onboard` koerer automatisk efter installation for at konfigurere dit arbejdsomrade og din udbyder.
## Hurtig start (TL;DR)
Fuld begynderguide (godkendelse, parring, kanaler): [Kom i gang](docs/setup-guides/one-click-bootstrap.md)
```bash
# Installation + onboard
./install.sh --api-key "sk-..." --provider openrouter
# Start gateway'en (webhook-server + web-dashboard)
zeroclaw gateway # standard: 127.0.0.1:42617
zeroclaw gateway --port 0 # tilfaeldig port (sikkerhedshaerdet)
# Tal med assistenten
zeroclaw agent -m "Hello, ZeroClaw!"
# Interaktiv tilstand
zeroclaw agent
# Start fuld autonom koersel (gateway + kanaler + cron + hands)
zeroclaw daemon
# Tjek status
zeroclaw status
# Koer diagnostik
zeroclaw doctor
```
Opgradering? Koer `zeroclaw doctor` efter opdatering.
### Fra kildekode (udvikling)
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
cargo build --release --locked
cargo install --path . --force --locked
zeroclaw onboard
```
> **Udviklingsfallback (ingen global installation):** praefikser kommandoer med `cargo run --release --` (eksempel: `cargo run --release -- status`).
## Migrering fra OpenClaw
ZeroClaw kan importere dit OpenClaw-arbejdsomrade, hukommelse og konfiguration:
```bash
# Forhaandsvisning af hvad der vil blive migreret (sikkert, skrivebeskyttet)
zeroclaw migrate openclaw --dry-run
# Koer migreringen
zeroclaw migrate openclaw
```
Dette migrerer dine hukommelsesposter, arbejdsomradefiler og konfiguration fra `~/.openclaw/` til `~/.zeroclaw/`. Konfiguration konverteres automatisk fra JSON til TOML.
## Sikkerhedsstandarder (DM-adgang)
ZeroClaw forbinder til rigtige beskedplatforme. Behandl indgaaende DM'er som utrovaerdigt input.
Fuld sikkerhedsguide: [SECURITY.md](SECURITY.md)
Standardadfaerd pa alle kanaler:
- **DM-parring** (standard): ukendte afsendere modtager en kort parringskode, og botten behandler ikke deres besked.
- Godkend med: `zeroclaw pairing approve <channel> <code>` (derefter tilfojes afsenderen til en lokal godkendelsesliste).
- Offentlige indgaaende DM'er kraever et eksplicit opt-in i `config.toml`.
- Koer `zeroclaw doctor` for at afsloere risikable eller forkert konfigurerede DM-politikker.
**Autonominiveauer:**
| Niveau | Adfaerd |
|--------|---------|
| `ReadOnly` | Agenten kan observere men ikke handle |
| `Supervised` (standard) | Agenten handler med godkendelse for mellem/hoej risiko-operationer |
| `Full` | Agenten handler autonomt inden for politikgraenser |
**Sandboxing-lag:** arbejdsomradeisolering, sti-traverseringsblokering, kommandogodkendelseslister, forbudte stier (`/etc`, `/root`, `~/.ssh`), hastighedsbegraensning (maks handlinger/time, omkostninger/dag-lofter).
---
<!-- BEGIN:WHATS_NEW -->
### 🚀 What's New in v0.3.1 (March 2026)
| Area | Highlights |
|---|---|
| ci | add Termux (aarch64-linux-android) release target |
<!-- END:WHATS_NEW -->
### 📢 Meddelelser
## Hvad er ZeroClaw?
Brug dette board til vigtige meddelelser (aendringsbrydende aendringer, sikkerhedsraadgivning, vedligeholdelsesperioder og udgivelsesblokkeringer).
ZeroClaw er en letvægts, foranderlig og udvidbar AI-assistent-infrastruktur bygget i Rust. Den forbinder forskellige LLM-udbydere (Anthropic, OpenAI, Google, Ollama osv.) via en samlet grænseflade og understøtter flere kanaler (Telegram, Matrix, CLI osv.).
| Dato (UTC) | Niveau | Meddelelse | Handling |
| ---------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 2026-02-19 | _Kritisk_ | Vi er **ikke tilknyttet** `openagen/zeroclaw`, `zeroclaw.org` eller `zeroclaw.net`. Domaenerne `zeroclaw.org` og `zeroclaw.net` peger i oejeblikket pa `openagen/zeroclaw`-forken, og det domaene/repository udgiver sig for at vaere vores officielle hjemmeside/projekt. | Stol ikke pa information, binaerfiler, fundraising eller meddelelser fra disse kilder. Brug kun [dette repository](https://github.com/zeroclaw-labs/zeroclaw) og vores verificerede sociale konti. |
| 2026-02-21 | _Vigtigt_ | Vores officielle hjemmeside er nu live: [zeroclawlabs.ai](https://zeroclawlabs.ai). Tak for din talmodighed, mens vi forberedte lanceringen. Vi ser stadig identitetstyveriforsoeg, sa **tilslut dig ikke** nogen investerings- eller fundraisingaktivitet, der haevder ZeroClaw-navnet, medmindre det er offentliggjort via vores officielle kanaler. | Brug [dette repository](https://github.com/zeroclaw-labs/zeroclaw) som den eneste kilde til sandhed. Foelg [X (@zeroclawlabs)](https://x.com/zeroclawlabs?s=21), [Facebook (Group)](https://www.facebook.com/groups/zeroclawlabs) og [Reddit (r/zeroclawlabs)](https://www.reddit.com/r/zeroclawlabs/) for officielle opdateringer. |
| 2026-02-19 | _Vigtigt_ | Anthropic opdaterede vilkaarene for Godkendelse og Legitimationsoplysningsbrug den 2026-02-19. Claude Code OAuth-tokens (Free, Pro, Max) er udelukkende beregnet til Claude Code og Claude.ai; brug af OAuth-tokens fra Claude Free/Pro/Max i ethvert andet produkt, vaerktoej eller tjeneste (inklusive Agent SDK) er ikke tilladt og kan overtraede forbrugervilkaarene. | Undga venligst midlertidigt Claude Code OAuth-integrationer for at forebygge potentielt tab. Original klausul: [Authentication and Credential Use](https://code.claude.com/docs/en/legal-and-compliance#authentication-and-credential-use). |
### Nøglefunktioner
## Hoejdepunkter
- **🦀 Skrevet i Rust**: Høj ydeevne, hukommelsessikkerhed og nul-omkostningsabstraktioner
- **🔌 Udbyder-agnostisk**: Understøtter OpenAI, Anthropic, Google Gemini, Ollama og andre
- **📱 Multi-kanal**: Telegram, Matrix (med E2EE), CLI og andre
- **🧠 Pluggbar hukommelse**: SQLite og Markdown-backends
- **🛠️ Udvidbare værktøjer**: Tilføj brugerdefinerede værktøjer nemt
- **🔒 Sikkerhed først**: Omvendt proxy, privatlivs-først design
- **Let koerselsmiljoe som standard** — almindelige CLI- og statusarbejdsgange koerer i et hukommelsesfodaftryk pa faa megabytes i release-builds.
- **Omkostningseffektiv udrulning** — designet til $10-kort og smaa cloud-instanser, ingen tunge koerselsmiljoafhaengigheder.
- **Hurtige koldstarter** — enkelt-binaer Rust-koerselsmiljoe holder kommando- og daemon-opstart naesten oejeblikkelig.
- **Portabel arkitektur** — en binaer pa tvaers af ARM, x86 og RISC-V med udskiftelige udbydere/kanaler/vaerktoejer.
- **Lokalt-foerst Gateway** — enkelt kontrolplan for sessioner, kanaler, vaerktoejer, cron, SOPs og haendelser.
- **Multikanal-indbakke** — WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WebSocket og flere.
- **Multi-agent-orkestrering (Hands)** — autonome agentsvaerme, der koerer efter tidsplan og bliver klogere over tid.
- **Standardoperationsprocedurer (SOPs)** — haendelsesdrevet workflowautomatisering med MQTT, webhook, cron og periferitriggere.
- **Web-dashboard** — React 19 + Vite web-UI med realtidschat, hukommelsesbrowser, konfigurationseditor, cron-manager og vaerktoejsinspektoer.
- **Hardware-periferier** — ESP32, STM32 Nucleo, Arduino, Raspberry Pi GPIO via `Peripheral`-trait'et.
- **Foersteklasses vaerktoejer** — shell, file I/O, browser, git, web fetch/search, MCP, Jira, Notion, Google Workspace og 70+ flere.
- **Livscyklushooks** — opfang og modificer LLM-kald, vaerktoejsudfoerelser og beskeder pa hvert trin.
- **Faerdighedsplatform** — medfoelgende, faellesskabs- og arbejdsomraadefaerdigheder med sikkerhedsauditering.
- **Tunnelsupport** — Cloudflare, Tailscale, ngrok, OpenVPN og brugerdefinerede tunneler til fjernadgang.
---
### Hvorfor hold vaelger ZeroClaw
## Hurtig Start
- **Let som standard:** lille Rust-binaer, hurtig opstart, lavt hukommelsesfodaftryk.
- **Sikkert fra design:** parring, streng sandboxing, eksplicitte godkendelseslister, arbejdsomradeafgraensning.
- **Fuldt udskifteligt:** kernesystemer er traits (providers, channels, tools, memory, tunnels).
- **Ingen laasning:** OpenAI-kompatibel udbydersupport + tilslutbare brugerdefinerede endepunkter.
### Krav
## Benchmark-overblik (ZeroClaw vs OpenClaw, Reproducerbart)
- Rust 1.70+
- En LLM-udbyder API-nøgle (Anthropic, OpenAI osv.)
Lokal maskinens hurtige benchmark (macOS arm64, feb. 2026) normaliseret for 0.8GHz edge-hardware.
| | OpenClaw | NanoBot | PicoClaw | ZeroClaw 🦀 |
| ------------------------- | ------------- | -------------- | --------------- | -------------------- |
| **Sprog** | TypeScript | Python | Go | **Rust** |
| **RAM** | > 1GB | > 100MB | < 10MB | **< 5MB** |
| **Opstart (0.8GHz core)** | > 500s | > 30s | < 1s | **< 10ms** |
| **Binaerstaerrelse** | ~28MB (dist) | N/A (Scripts) | ~8MB | **~8.8 MB** |
| **Omkostning** | Mac Mini $599 | Linux SBC ~$50 | Linux Board $10 | **Enhver hardware $10** |
> Notat: ZeroClaw-resultater er maalt pa release-builds ved brug af `/usr/bin/time -l`. OpenClaw kraever Node.js-koerselsmiljoe (typisk ~390MB ekstra hukommelsesoverhead), mens NanoBot kraever Python-koerselsmiljoe. PicoClaw og ZeroClaw er statiske binaerer. RAM-tallene ovenfor er koerselstidshukommelse; kompileringstidskrav er hoejere.
<p align="center">
<img src="docs/assets/zeroclaw-comparison.jpeg" alt="ZeroClaw vs OpenClaw Comparison" width="800" />
</p>
### Reproducerbar lokal maaling
### Installation
```bash
cargo build --release
ls -lh target/release/zeroclaw
# Klon repository
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
/usr/bin/time -l target/release/zeroclaw --help
/usr/bin/time -l target/release/zeroclaw status
# Byg
cargo build --release
# Kør
cargo run --release
```
## Alt vi har bygget indtil nu
### Med Docker
### Kerneplatform
- Gateway HTTP/WS/SSE-kontrolplan med sessioner, tilstedevaerelse, konfiguration, cron, webhooks, web-dashboard og parring.
- CLI-overflade: `gateway`, `agent`, `onboard`, `doctor`, `status`, `service`, `migrate`, `auth`, `cron`, `channel`, `skills`.
- Agent-orkestreringsloekke med vaerktoejsafsendelse, prompt-konstruktion, beskedklassificering og hukommelsesindlaesning.
- Sessionsmodel med sikkerhedspolitikhaandhaeveelse, autonominiveauer og godkendelsesportering.
- Robust udbyderindpakning med failover, genforsoeg og modelrutering pa tvaers af 20+ LLM-backends.
### Kanaler
Kanaler: WhatsApp (native), Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, DingTalk, Lark, Mattermost, Nextcloud Talk, Nostr, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WATI, Mochat, Linq, Notion, WebSocket, ClawdTalk.
Feature-gated: Matrix (`channel-matrix`), Lark (`channel-lark`), Nostr (`channel-nostr`).
### Web-dashboard
React 19 + Vite 6 + Tailwind CSS 4 web-dashboard serveret direkte fra Gateway'en:
- **Dashboard** — systemoversigt, sundhedsstatus, oppetid, omkostningsovervaagning
- **Agent Chat** — interaktiv chat med agenten
- **Memory** — gennemse og administrer hukommelsesposter
- **Config** — vis og rediger konfiguration
- **Cron** — administrer planlagte opgaver
- **Tools** — gennemse tilgaengelige vaerktoejer
- **Logs** — vis agentaktivitetslogge
- **Cost** — tokenforbrug og omkostningsovervaagning
- **Doctor** — systemsundhedsdiagnostik
- **Integrations** — integrationsstatus og opsaetning
- **Pairing** — enhedsparringsstyring
### Firmware-maal
| Maal | Platform | Formaal |
|------|----------|---------|
| ESP32 | Espressif ESP32 | Tradloes periferiagent |
| ESP32-UI | ESP32 + Display | Agent med visuel graenseflade |
| STM32 Nucleo | STM32 (ARM Cortex-M) | Industriel periferi |
| Arduino | Arduino | Basis sensor-/aktuatorbro |
| Uno Q Bridge | Arduino Uno | Seriel bro til agent |
### Vaerktoejer + automatisering
- **Kerne:** shell, file read/write/edit, git operations, glob search, content search
- **Web:** browser control, web fetch, web search, screenshot, image info, PDF read
- **Integrationer:** Jira, Notion, Google Workspace, Microsoft 365, LinkedIn, Composio, Pushover
- **MCP:** Model Context Protocol tool wrapper + deferred tool sets
- **Planlaegning:** cron add/remove/update/run, schedule tool
- **Hukommelse:** recall, store, forget, knowledge, project intel
- **Avanceret:** delegate (agent-to-agent), swarm, model switch/routing, security ops, cloud ops
- **Hardware:** board info, memory map, memory read (feature-gated)
### Koerselsmiljoe + sikkerhed
- **Autonominiveauer:** ReadOnly, Supervised (standard), Full.
- **Sandboxing:** arbejdsomradeisolering, sti-traverseringsblokering, kommandogodkendelseslister, forbudte stier, Landlock (Linux), Bubblewrap.
- **Hastighedsbegraensning:** maks handlinger pr. time, maks omkostninger pr. dag (konfigurerbart).
- **Godkendelsesportering:** interaktiv godkendelse for mellem/hoej risiko-operationer.
- **E-stop:** noedstopkapabilitet.
- **129+ sikkerhedstests** i automatiseret CI.
### Drift + pakning
- Web-dashboard serveret direkte fra Gateway'en.
- Tunnelsupport: Cloudflare, Tailscale, ngrok, OpenVPN, brugerdefineret kommando.
- Docker-koerselsmiljoetilpasning til containeriseret udfoersel.
- CI/CD: beta (auto on push) → stable (manual dispatch) → Docker, crates.io, Scoop, AUR, Homebrew, tweet.
- Forhaandsbyggede binaerer til Linux (x86_64, aarch64, armv7), macOS (x86_64, aarch64), Windows (x86_64).
```bash
docker run -d \
--name zeroclaw \
-e ANTHROPIC_API_KEY=your_key \
-v zeroclaw-data:/app/data \
zeroclaw/zeroclaw:latest
```
---
## Konfiguration
Minimal `~/.zeroclaw/config.toml`:
ZeroClaw bruger en YAML-konfigurationsfil. Som standard leder den efter `config.yaml`.
```toml
default_provider = "anthropic"
api_key = "sk-ant-..."
```yaml
# Standardudbyder
provider: anthropic
# Udbyderkonfiguration
providers:
anthropic:
api_key: ${ANTHROPIC_API_KEY}
model: claude-3-5-sonnet-20241022
openai:
api_key: ${OPENAI_API_KEY}
model: gpt-4o
# Hukommelseskonfiguration
memory:
backend: sqlite
path: data/memory.db
# Kanalkonfiguration
channels:
telegram:
token: ${TELEGRAM_BOT_TOKEN}
```
Fuld konfigurationsreference: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md).
### Kanalkonfiguration
**Telegram:**
```toml
[channels.telegram]
bot_token = "123456:ABC-DEF..."
```
**Discord:**
```toml
[channels.discord]
token = "your-bot-token"
```
**Slack:**
```toml
[channels.slack]
bot_token = "xoxb-..."
app_token = "xapp-..."
```
**WhatsApp:**
```toml
[channels.whatsapp]
enabled = true
```
**Matrix:**
```toml
[channels.matrix]
homeserver_url = "https://matrix.org"
username = "@bot:matrix.org"
password = "..."
```
**Signal:**
```toml
[channels.signal]
phone_number = "+1234567890"
```
### Tunnelkonfiguration
```toml
[tunnel]
kind = "cloudflare" # or "tailscale", "ngrok", "openvpn", "custom", "none"
```
Detaljer: [Kanalreference](docs/reference/api/channels-reference.md) · [Konfigurationsreference](docs/reference/api/config-reference.md)
### Koerselsmiljoestoette (aktuel)
- **`native`** (standard) — direkte procesudfoersel, hurtigste sti, ideel til betroede miljoeer.
- **`docker`** — fuld containerisolering, haandhaevede sikkerhedspolitikker, kraever Docker.
Saet `runtime.kind = "docker"` for streng sandboxing eller netvaerksisolering.
## Abonnementsgodkendelse (OpenAI Codex / Claude Code / Gemini)
ZeroClaw understoetter abonnements-native godkendelsesprofiler (flere konti, krypteret i hvile).
- Lagerfil: `~/.zeroclaw/auth-profiles.json`
- Krypteringsnoegle: `~/.zeroclaw/.secret_key`
- Profil-id-format: `<provider>:<profile_name>` (eksempel: `openai-codex:work`)
```bash
# OpenAI Codex OAuth (ChatGPT subscription)
zeroclaw auth login --provider openai-codex --device-code
# Gemini OAuth
zeroclaw auth login --provider gemini --profile default
# Anthropic setup-token
zeroclaw auth paste-token --provider anthropic --profile default --auth-kind authorization
# Check / refresh / switch profile
zeroclaw auth status
zeroclaw auth refresh --provider openai-codex --profile default
zeroclaw auth use --provider openai-codex --profile work
# Run the agent with subscription auth
zeroclaw agent --provider openai-codex -m "hello"
zeroclaw agent --provider anthropic -m "hello"
```
## Agent-arbejdsomrade + faerdigheder
Arbejdsomraderod: `~/.zeroclaw/workspace/` (konfigurerbart via config).
Injicerede promptfiler:
- `IDENTITY.md` — agentens personlighed og rolle
- `USER.md` — brugerkontekst og praeferencer
- `MEMORY.md` — langsigtede fakta og laerdommer
- `AGENTS.md` — sessionskonventioner og initialiseringsregler
- `SOUL.md` — kerneidentitet og driftsprincipper
Faerdigheder: `~/.zeroclaw/workspace/skills/<skill>/SKILL.md` eller `SKILL.toml`.
```bash
# List installed skills
zeroclaw skills list
# Install from git
zeroclaw skills install https://github.com/user/my-skill.git
# Security audit before install
zeroclaw skills audit https://github.com/user/my-skill.git
# Remove a skill
zeroclaw skills remove my-skill
```
## CLI-kommandoer
```bash
# Arbejdsomraadestyring
zeroclaw onboard # Guidet opsaetningsguide
zeroclaw status # Vis daemon/agent-status
zeroclaw doctor # Koer systemdiagnostik
# Gateway + daemon
zeroclaw gateway # Start gateway-server (127.0.0.1:42617)
zeroclaw daemon # Start fuld autonom koersel
# Agent
zeroclaw agent # Interaktiv chattilstand
zeroclaw agent -m "message" # Enkeltbeskedtilstand
# Servicestyring
zeroclaw service install # Installer som OS-service (launchd/systemd)
zeroclaw service start|stop|restart|status
# Kanaler
zeroclaw channel list # List konfigurerede kanaler
zeroclaw channel doctor # Tjek kanalsundhed
zeroclaw channel bind-telegram 123456789
# Cron + planlaegning
zeroclaw cron list # List planlagte opgaver
zeroclaw cron add "*/5 * * * *" --prompt "Check system health"
zeroclaw cron remove <id>
# Hukommelse
zeroclaw memory list # List hukommelsesposter
zeroclaw memory get <key> # Hent en hukommelse
zeroclaw memory stats # Hukommelsesstatistik
# Godkendelsesprofiler
zeroclaw auth login --provider <name>
zeroclaw auth status
zeroclaw auth use --provider <name> --profile <profile>
# Hardware-periferier
zeroclaw hardware discover # Skan efter tilsluttede enheder
zeroclaw peripheral list # List tilsluttede periferier
zeroclaw peripheral flash # Flash firmware til enhed
# Migrering
zeroclaw migrate openclaw --dry-run
zeroclaw migrate openclaw
# Shell-fuldfoerelser
source <(zeroclaw completions bash)
zeroclaw completions zsh > ~/.zfunc/_zeroclaw
```
Fuld kommandoreference: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
<!-- markdownlint-disable MD001 MD024 -->
## Forudsaetninger
<details>
<summary><strong>Windows</strong></summary>
#### Paakraevet
1. **Visual Studio Build Tools** (giver MSVC-linker og Windows SDK):
```powershell
winget install Microsoft.VisualStudio.2022.BuildTools
```
Under installation (eller via Visual Studio Installer) vaelg workloaden **"Desktop development with C++"**.
2. **Rust toolchain:**
```powershell
winget install Rustlang.Rustup
```
Efter installation, aabn en ny terminal og koer `rustup default stable` for at sikre, at den stabile toolchain er aktiv.
3. **Verificer**, at begge virker:
```powershell
rustc --version
cargo --version
```
#### Valgfrit
- **Docker Desktop** — paakraevet kun ved brug af [Docker sandboxed runtime](#koerselsmiljoestoette-aktuel) (`runtime.kind = "docker"`). Installer via `winget install Docker.DockerDesktop`.
</details>
<details>
<summary><strong>Linux / macOS</strong></summary>
#### Paakraevet
1. **Byggevaerktoejer:**
- **Linux (Debian/Ubuntu):** `sudo apt install build-essential pkg-config`
- **Linux (Fedora/RHEL):** `sudo dnf group install development-tools && sudo dnf install pkg-config`
- **macOS:** Installer Xcode Command Line Tools: `xcode-select --install`
2. **Rust toolchain:**
```bash
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
```
Se [rustup.rs](https://rustup.rs) for detaljer.
3. **Verificer**, at begge virker:
```bash
rustc --version
cargo --version
```
#### En-linje-installationsprogram
Eller spring trinnene ovenfor over og installer alt (systemafhaengigheder, Rust, ZeroClaw) med en enkelt kommando:
```bash
curl -LsSf https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/install.sh | bash
```
#### Kompileringsressourcekrav
Bygning fra kildekode kraever flere ressourcer end at koere den resulterende binaer:
| Ressource | Minimum | Anbefalet |
| -------------- | ------- | ----------- |
| **RAM + swap** | 2 GB | 4 GB+ |
| **Ledig disk** | 6 GB | 10 GB+ |
Hvis din vaert er under minimum, brug forhaandsbyggede binaerer:
```bash
./install.sh --prefer-prebuilt
```
For kun-binaer-installation uden kildekodefallback:
```bash
./install.sh --prebuilt-only
```
#### Valgfrit
- **Docker** — paakraevet kun ved brug af [Docker sandboxed runtime](#koerselsmiljoestoette-aktuel) (`runtime.kind = "docker"`). Installer via din pakkehaandtering eller [docker.com](https://docs.docker.com/engine/install/).
> **Notat:** Standard `cargo build --release` bruger `codegen-units=1` for at reducere spidskompileringspresset. For hurtigere builds pa kraftige maskiner, brug `cargo build --profile release-fast`.
</details>
<!-- markdownlint-enable MD001 MD024 -->
### Forhaandsbyggede binaerer
Udgivelsesaktiver udgives for:
- Linux: `x86_64`, `aarch64`, `armv7`
- macOS: `x86_64`, `aarch64`
- Windows: `x86_64`
Download de seneste aktiver fra:
<https://github.com/zeroclaw-labs/zeroclaw/releases/latest>
---
## Dokumentation
Brug disse, naar du er forbi onboarding-flowet og vil have den dybere reference.
For detaljeret dokumentation, se:
- Start med [dokumentationsindekset](docs/README.md) til navigation og "hvad er hvor."
- Laes [arkitekturoversigten](docs/architecture.md) for den fulde systemmodel.
- Brug [konfigurationsreferencen](docs/reference/api/config-reference.md), naar du har brug for hver noegle og eksempel.
- Koer Gateway'en efter bogen med [driftsrunbooken](docs/ops/operations-runbook.md).
- Foelg [ZeroClaw Onboard](#hurtig-start-tldr) for en guidet opsaetning.
- Fejlsoeg almindelige fejl med [fejlsoegningsguiden](docs/ops/troubleshooting.md).
- Gennemgaa [sikkerhedsvejledning](docs/security/README.md) foer du eksponerer noget.
- [Dokumentationshub](docs/README.md)
- [Kommandoreference](docs/commands-reference.md)
- [Udbyderreference](docs/providers-reference.md)
- [Kanalreference](docs/channels-reference.md)
- [Konfigurationsreference](docs/config-reference.md)
### Referencedokumentation
- Dokumentationscentral: [docs/README.md](docs/README.md)
- Samlet indholdsfortegnelse: [docs/SUMMARY.md](docs/SUMMARY.md)
- Kommandoreference: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
- Konfigurationsreference: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md)
- Udbyderreference: [docs/reference/api/providers-reference.md](docs/reference/api/providers-reference.md)
- Kanalreference: [docs/reference/api/channels-reference.md](docs/reference/api/channels-reference.md)
- Driftsrunbook: [docs/ops/operations-runbook.md](docs/ops/operations-runbook.md)
- Fejlsoegning: [docs/ops/troubleshooting.md](docs/ops/troubleshooting.md)
### Samarbejdsdokumentation
- Bidragsguide: [CONTRIBUTING.md](CONTRIBUTING.md)
- PR-arbejdsgangspolitik: [docs/contributing/pr-workflow.md](docs/contributing/pr-workflow.md)
- CI-arbejdsgangsguide: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- Anmelderhaandbog: [docs/contributing/reviewer-playbook.md](docs/contributing/reviewer-playbook.md)
- Sikkerhedsoplysningspolitik: [SECURITY.md](SECURITY.md)
- Dokumentationsskabelon: [docs/contributing/doc-template.md](docs/contributing/doc-template.md)
### Udrulning + drift
- Netvaerksudrulningsguide: [docs/ops/network-deployment.md](docs/ops/network-deployment.md)
- Proxy-agent-haandbog: [docs/ops/proxy-agent-playbook.md](docs/ops/proxy-agent-playbook.md)
- Hardwareguider: [docs/hardware/README.md](docs/hardware/README.md)
## Smooth Crab 🦀
ZeroClaw blev bygget til smooth crab 🦀, en hurtig og effektiv AI-assistent. Bygget af Argenis De La Rosa og faellesskabet.
- [zeroclawlabs.ai](https://zeroclawlabs.ai)
- [@zeroclawlabs](https://x.com/zeroclawlabs)
## Stoet ZeroClaw
Hvis ZeroClaw hjaelper dit arbejde, og du vil stoette den igangvaerende udvikling, kan du donere her:
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=for-the-badge&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
### 🙏 Saerlig tak
En hjertelig tak til de faellesskaber og institutioner, der inspirerer og naerer dette open source-arbejde:
- **Harvard University** — for at fremme intellektuel nysgerrighed og skubbe graenserne for hvad der er muligt.
- **MIT** — for at kaempe for aben viden, open source og troen pa, at teknologi skal vaere tilgaengelig for alle.
- **Sundai Club** — for faellesskabet, energien og den utraettelige drift til at bygge ting, der betyder noget.
- **Verden & Hinsides** 🌍✨ — til enhver bidragyder, droommer og bygger derude, der goer open source til en kraft for det gode. Dette er for dig.
Vi bygger i det aabne, fordi de bedste ideer kommer fra alle steder. Hvis du laeser dette, er du en del af det. Velkommen. 🦀❤️
---
## Bidrag
Ny til ZeroClaw? Kig efter issues maerket [`good first issue`](https://github.com/zeroclaw-labs/zeroclaw/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) — se vores [Bidragsguide](CONTRIBUTING.md#first-time-contributors) for at komme i gang. AI/vibe-kodede PR'er velkomne! 🤖
Se [CONTRIBUTING.md](CONTRIBUTING.md) og [CLA.md](docs/contributing/cla.md). Implementer et trait, indsend en PR:
- CI-arbejdsgangsguide: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- Ny `Provider``src/providers/`
- Ny `Channel``src/channels/`
- Ny `Observer``src/observability/`
- Nyt `Tool``src/tools/`
- Ny `Memory``src/memory/`
- Ny `Tunnel``src/tunnel/`
- Ny `Peripheral``src/peripherals/`
- Ny `Skill``~/.zeroclaw/workspace/skills/<name>/`
<!-- BEGIN:RECENT_CONTRIBUTORS -->
<!-- END:RECENT_CONTRIBUTORS -->
## ⚠️ Officielt repository og advarsel om identitetstyveri
**Dette er det eneste officielle ZeroClaw-repository:**
> https://github.com/zeroclaw-labs/zeroclaw
Ethvert andet repository, organisation, domaene eller pakke, der haevder at vaere "ZeroClaw" eller antyder tilknytning til ZeroClaw Labs, er **uautoriseret og ikke tilknyttet dette projekt**. Kendte uautoriserede forks vil blive opfoert i [TRADEMARK.md](docs/maintainers/trademark.md).
Hvis du stoeder pa identitetstyveri eller varemaerkemisbrug, bedes du [aabne et issue](https://github.com/zeroclaw-labs/zeroclaw/issues).
Bidrag er velkomne! Læs venligst [Bidragsguiden](CONTRIBUTING.md).
---
## Licens
ZeroClaw er dobbeltlicenseret for maksimal aabenhed og bidragyderbeskyttelse:
Dette projekt er dobbelt-licenseret:
| Licens | Anvendelse |
|---|---|
| [MIT](LICENSE-MIT) | Open source, forskning, akademisk, personligt brug |
| [Apache 2.0](LICENSE-APACHE) | Patentbeskyttelse, institutionel, kommerciel udrulning |
- MIT License
- Apache License, version 2.0
Du kan vaelge enten licens. **Bidragydere giver automatisk rettigheder under begge** — se [CLA.md](docs/contributing/cla.md) for den fulde bidragsaftale.
### Varemaerke
Navnet **ZeroClaw** og logoet er varemaerker tilhoerende ZeroClaw Labs. Denne licens giver ikke tilladelse til at bruge dem til at antyde stoette eller tilknytning. Se [TRADEMARK.md](docs/maintainers/trademark.md) for tilladte og forbudte anvendelser.
### Bidragyderbeskyttelser
- Du **beholder ophavsretten** til dine bidrag
- **Patentbevilling** (Apache 2.0) beskytter dig mod patentkrav fra andre bidragydere
- Dine bidrag er **permanent attribueret** i commit-historik og [NOTICE](NOTICE)
- Ingen varemaerkerettigheder overfoeres ved at bidrage
Se [LICENSE-APACHE](LICENSE-APACHE) og [LICENSE-MIT](LICENSE-MIT) for detaljer.
---
**ZeroClaw** — Nul overhead. Nul kompromis. Udrulning overalt. Udskift hvad som helst. 🦀
## Fællesskab
## Bidragydere
- [Telegram](https://t.me/zeroclawlabs)
- [Facebook Group](https://www.facebook.com/groups/zeroclaw)
- [WeChat Group](https://zeroclawlabs.cn/group.jpg)
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors">
<img src="https://contrib.rocks/image?repo=zeroclaw-labs/zeroclaw" alt="ZeroClaw contributors" />
</a>
---
Denne liste genereres fra GitHub-bidragydergrafiken og opdateres automatisk.
## Sponsorer
## Stjernehistorik
Hvis ZeroClaw er nyttigt for dig, overvej venligst at købe os en kaffe:
<p align="center">
<a href="https://www.star-history.com/#zeroclaw-labs/zeroclaw&type=date&legend=top-left">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&theme=dark&legend=top-left" />
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
</picture>
</a>
</p>
[![Buy Me a Coffee](https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee)](https://buymeacoffee.com/argenistherose)
<!-- BEGIN:RECENT_CONTRIBUTORS -->
### 🌟 Recent Contributors (v0.3.1)
3 contributors shipped features, fixes, and improvements in this release cycle:
- **Argenis**
- **argenis de la rosa**
- **Claude Opus 4.6**
Thank you to everyone who opened issues, reviewed PRs, translated docs, and helped test. Every contribution matters. 🦀
<!-- END:RECENT_CONTRIBUTORS -->

File diff suppressed because it is too large Load Diff

View File

@ -1,29 +1,20 @@
<p align="center">
<img src="https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/docs/assets/zeroclaw-banner.png" alt="ZeroClaw" width="600" />
<img src="zeroclaw.png" alt="ZeroClaw" width="200" />
</p>
<h1 align="center">🦀 ZeroClaw — Προσωπικός Βοηθός Τεχνητής Νοημοσύνης</h1>
<h1 align="center">ZeroClaw 🦀</h1>
<p align="center">
<strong>Μηδενική επιβάρυνση. Μηδενικοί συμβιβασμοί. 100% Rust. 100% Αγνωστικός.</strong><br>
⚡️ <strong>Τρέχει σε υλικό $10 με <5MB RAM: Αυτό σημαίνει 99% λιγότερη μνήμη από το OpenClaw και 98% φθηνότερο από ένα Mac mini!</strong>
<strong>Μηδενικό overhead. Μηδενικός συμβιβασμός. 100% Rust. 100% Αγνωστικιστικό.</strong><br>
⚡️ <strong>Εκτελείται σε hardware $10 με <5MB RAM: Αυτό είναι 99% λιγότερη μνήμη από το OpenClaw και 98% φθηνότερο από ένα Mac mini!</strong>
</p>
<p align="center">
<a href="LICENSE-APACHE"><img src="https://img.shields.io/badge/license-MIT%20OR%20Apache%202.0-blue.svg" alt="License: MIT OR Apache-2.0" /></a>
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors"><img src="https://img.shields.io/github/contributors/zeroclaw-labs/zeroclaw?color=green" alt="Contributors" /></a>
<a href="NOTICE"><img src="https://img.shields.io/badge/contributors-27+-green.svg" alt="Contributors" /></a>
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
<a href="https://x.com/zeroclawlabs?s=21"><img src="https://img.shields.io/badge/X-%40zeroclawlabs-000000?style=flat&logo=x&logoColor=white" alt="X: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclawlabs"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
<a href="https://discord.com/invite/wDshRVqRjx"><img src="https://img.shields.io/badge/Discord-Join-5865F2?style=flat&logo=discord&logoColor=white" alt="Discord" /></a>
<a href="https://www.instagram.com/therealzeroclaw"><img src="https://img.shields.io/badge/Instagram-%40therealzeroclaw-E4405F?style=flat&logo=instagram&logoColor=white" alt="Instagram: @therealzeroclaw" /></a>
<a href="https://www.tiktok.com/@zeroclawlabs"><img src="https://img.shields.io/badge/TikTok-%40zeroclawlabs-000000?style=flat&logo=tiktok&logoColor=white" alt="TikTok: @zeroclawlabs" /></a>
<a href="https://www.rednote.com/user/profile/69b735e6000000002603927e"><img src="https://img.shields.io/badge/RedNote-Official-FF2442?style=flat" alt="RedNote" /></a>
<a href="https://www.reddit.com/r/zeroclawlabs/"><img src="https://img.shields.io/badge/Reddit-r%2Fzeroclawlabs-FF4500?style=flat&logo=reddit&logoColor=white" alt="Reddit: r/zeroclawlabs" /></a>
</p>
<p align="center">
Δημιουργήθηκε από φοιτητές και μέλη των κοινοτήτων Harvard, MIT και Sundai.Club.
<a href="https://www.facebook.com/groups/zeroclaw"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
</p>
<p align="center">
@ -61,695 +52,151 @@
<a href="README.nb.md">🇳🇴 Norsk</a>
</p>
Το ZeroClaw είναι ένας προσωπικός βοηθός τεχνητής νοημοσύνης που τρέχει στις δικές σας συσκευές. Σας απαντά στα κανάλια που ήδη χρησιμοποιείτε (WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work και περισσότερα). Διαθέτει πίνακα ελέγχου web για έλεγχο σε πραγματικό χρόνο και μπορεί να συνδεθεί με περιφερειακά υλικού (ESP32, STM32, Arduino, Raspberry Pi). Το Gateway είναι απλώς το επίπεδο ελέγχου — το προϊόν είναι ο βοηθός.
Αν θέλετε έναν προσωπικό βοηθό ενός χρήστη που αισθάνεται τοπικός, γρήγορος και πάντα ενεργός, αυτό είναι.
<p align="center">
<a href="https://zeroclawlabs.ai">Ιστοσελίδα</a> ·
<a href="docs/README.md">Τεκμηρίωση</a> ·
<a href="docs/architecture.md">Αρχιτεκτονική</a> ·
<a href="#γρήγορη-εκκίνηση-tldr">Ξεκινήστε</a> ·
<a href="#μετεγκατάσταση-από-openclaw">Μετεγκατάσταση από OpenClaw</a> ·
<a href="docs/ops/troubleshooting.md">Αντιμετώπιση προβλημάτων</a> ·
<a href="https://discord.com/invite/wDshRVqRjx">Discord</a>
</p>
> **Προτεινόμενη ρύθμιση:** εκτελέστε `zeroclaw onboard` στο τερματικό σας. Το ZeroClaw Onboard σας καθοδηγεί βήμα προς βήμα στη ρύθμιση του gateway, του χώρου εργασίας, των καναλιών και του παρόχου. Είναι η συνιστώμενη διαδρομή ρύθμισης και λειτουργεί σε macOS, Linux και Windows (μέσω WSL2). Νέα εγκατάσταση; Ξεκινήστε εδώ: [Ξεκινήστε](#γρήγορη-εκκίνηση-tldr)
### Πιστοποίηση Συνδρομής (OAuth)
- **OpenAI Codex** (συνδρομή ChatGPT)
- **Gemini** (Google OAuth)
- **Anthropic** (κλειδί API ή token πιστοποίησης)
Σημείωση μοντέλου: ενώ υποστηρίζονται πολλοί πάροχοι/μοντέλα, για την καλύτερη εμπειρία χρησιμοποιήστε το ισχυρότερο μοντέλο τελευταίας γενιάς που έχετε στη διάθεσή σας. Δείτε [Onboarding](#γρήγορη-εκκίνηση-tldr).
Ρύθμιση μοντέλων + CLI: [Αναφορά παρόχων](docs/reference/api/providers-reference.md)
Εναλλαγή προφίλ πιστοποίησης (OAuth vs κλειδιά API) + failover: [Failover μοντέλων](docs/reference/api/providers-reference.md)
## Εγκατάσταση (συνιστάται)
Χρόνος εκτέλεσης: Rust stable toolchain. Ένα μόνο δυαδικό αρχείο, χωρίς εξαρτήσεις χρόνου εκτέλεσης.
### Homebrew (macOS/Linuxbrew)
```bash
brew install zeroclaw
```
### Εγκατάσταση με ένα κλικ
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./install.sh
```
Το `zeroclaw onboard` εκτελείται αυτόματα μετά την εγκατάσταση για τη ρύθμιση του χώρου εργασίας και του παρόχου.
## Γρήγορη εκκίνηση (TL;DR)
Πλήρης οδηγός για αρχάριους (πιστοποίηση, σύζευξη, κανάλια): [Ξεκινήστε](docs/setup-guides/one-click-bootstrap.md)
```bash
# Εγκατάσταση + onboard
./install.sh --api-key "sk-..." --provider openrouter
# Εκκίνηση του gateway (webhook server + web dashboard)
zeroclaw gateway # προεπιλογή: 127.0.0.1:42617
zeroclaw gateway --port 0 # τυχαία θύρα (ενισχυμένη ασφάλεια)
# Μιλήστε στον βοηθό
zeroclaw agent -m "Hello, ZeroClaw!"
# Διαδραστική λειτουργία
zeroclaw agent
# Εκκίνηση πλήρους αυτόνομου χρόνου εκτέλεσης (gateway + κανάλια + cron + hands)
zeroclaw daemon
# Έλεγχος κατάστασης
zeroclaw status
# Εκτέλεση διαγνωστικών
zeroclaw doctor
```
Αναβάθμιση; Εκτελέστε `zeroclaw doctor` μετά την ενημέρωση.
### Από πηγαίο κώδικα (ανάπτυξη)
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
cargo build --release --locked
cargo install --path . --force --locked
zeroclaw onboard
```
> **Εναλλακτική ανάπτυξης (χωρίς καθολική εγκατάσταση):** προθέστε τις εντολές με `cargo run --release --` (παράδειγμα: `cargo run --release -- status`).
## Μετεγκατάσταση από OpenClaw
Το ZeroClaw μπορεί να εισάγει τον χώρο εργασίας, τη μνήμη και τη ρύθμιση παραμέτρων του OpenClaw:
```bash
# Προεπισκόπηση τι θα μετεγκατασταθεί (ασφαλές, μόνο ανάγνωση)
zeroclaw migrate openclaw --dry-run
# Εκτέλεση της μετεγκατάστασης
zeroclaw migrate openclaw
```
Αυτό μετεγκαθιστά τις εγγραφές μνήμης, τα αρχεία χώρου εργασίας και τη ρύθμιση παραμέτρων από `~/.openclaw/` σε `~/.zeroclaw/`. Η ρύθμιση μετατρέπεται αυτόματα από JSON σε TOML.
## Προεπιλογές ασφάλειας (πρόσβαση DM)
Το ZeroClaw συνδέεται σε πραγματικές επιφάνειες μηνυμάτων. Αντιμετωπίστε τα εισερχόμενα DM ως μη αξιόπιστη είσοδο.
Πλήρης οδηγός ασφάλειας: [SECURITY.md](SECURITY.md)
Προεπιλεγμένη συμπεριφορά σε όλα τα κανάλια:
- **Σύζευξη DM** (προεπιλογή): οι άγνωστοι αποστολείς λαμβάνουν έναν σύντομο κωδικό σύζευξης και ο bot δεν επεξεργάζεται το μήνυμά τους.
- Εγκρίνετε με: `zeroclaw pairing approve <channel> <code>` (τότε ο αποστολέας προστίθεται σε τοπική λίστα επιτρεπόμενων).
- Τα δημόσια εισερχόμενα DM απαιτούν ρητή ενεργοποίηση στο `config.toml`.
- Εκτελέστε `zeroclaw doctor` για να εντοπίσετε επικίνδυνες ή εσφαλμένες πολιτικές DM.
**Επίπεδα αυτονομίας:**
| Επίπεδο | Συμπεριφορά |
|---------|-------------|
| `ReadOnly` | Ο πράκτορας μπορεί να παρατηρεί αλλά όχι να ενεργεί |
| `Supervised` (προεπιλογή) | Ο πράκτορας ενεργεί με έγκριση για λειτουργίες μεσαίου/υψηλού κινδύνου |
| `Full` | Ο πράκτορας ενεργεί αυτόνομα εντός ορίων πολιτικής |
**Επίπεδα sandboxing:** απομόνωση χώρου εργασίας, αποκλεισμός διέλευσης διαδρομής, λίστες επιτρεπόμενων εντολών, απαγορευμένες διαδρομές (`/etc`, `/root`, `~/.ssh`), περιορισμός ρυθμού (μέγιστες ενέργειες/ώρα, όρια κόστους/ημέρα).
---
<!-- BEGIN:WHATS_NEW -->
### 🚀 What's New in v0.3.1 (March 2026)
| Area | Highlights |
|---|---|
| ci | add Termux (aarch64-linux-android) release target |
<!-- END:WHATS_NEW -->
### 📢 Ανακοινώσεις
> **📝 Σημείωση:** Αυτό είναι ένα συνοπτικό README στα ελληνικά. Για πλήρη τεκμηρίωση, ανατρέξτε στο [αγγλικό README](README.md). Οι σύνδεσμοι τεκμηρίωσης παραπέμπουν στην αγγλική τεκμηρίωση.
Χρησιμοποιήστε αυτόν τον πίνακα για σημαντικές ειδοποιήσεις (αλλαγές που σπάνε τη συμβατότητα, συμβουλές ασφαλείας, παράθυρα συντήρησης και αποκλεισμοί έκδοσης).
## Τι είναι το ZeroClaw;
| Ημερομηνία (UTC) | Επίπεδο | Ειδοποίηση | Ενέργεια |
| ---------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 2026-02-19 | _Κρίσιμο_ | **Δεν** είμαστε συνδεδεμένοι με `openagen/zeroclaw`, `zeroclaw.org` ή `zeroclaw.net`. Οι τομείς `zeroclaw.org` και `zeroclaw.net` δείχνουν αυτή τη στιγμή στο fork `openagen/zeroclaw`, και αυτός ο τομέας/αποθετήριο υποδύονται τον επίσημο ιστότοπο/έργο μας. | Μην εμπιστεύεστε πληροφορίες, δυαδικά αρχεία, εκστρατείες χρηματοδότησης ή ανακοινώσεις από αυτές τις πηγές. Χρησιμοποιήστε μόνο [αυτό το αποθετήριο](https://github.com/zeroclaw-labs/zeroclaw) και τους επαληθευμένους λογαριασμούς μας στα μέσα κοινωνικής δικτύωσης. |
| 2026-02-21 | _Σημαντικό_ | Ο επίσημος ιστότοπός μας είναι πλέον ζωντανός: [zeroclawlabs.ai](https://zeroclawlabs.ai). Ευχαριστούμε για την υπομονή σας ενώ ετοιμάζαμε την εκκίνηση. Εξακολουθούμε να βλέπουμε απόπειρες πλαστοπροσωπίας, οπότε **μην** συμμετέχετε σε καμία επενδυτική ή χρηματοδοτική δραστηριότητα που ισχυρίζεται το όνομα ZeroClaw εκτός αν δημοσιεύεται μέσω των επίσημων καναλιών μας. | Χρησιμοποιήστε [αυτό το αποθετήριο](https://github.com/zeroclaw-labs/zeroclaw) ως τη μοναδική πηγή αλήθειας. Ακολουθήστε [X (@zeroclawlabs)](https://x.com/zeroclawlabs?s=21), [Facebook (Group)](https://www.facebook.com/groups/zeroclawlabs) και [Reddit (r/zeroclawlabs)](https://www.reddit.com/r/zeroclawlabs/) για επίσημες ενημερώσεις. |
| 2026-02-19 | _Σημαντικό_ | Η Anthropic ενημέρωσε τους Όρους Πιστοποίησης και Χρήσης Διαπιστευτηρίων στις 2026-02-19. Τα OAuth tokens του Claude Code (Free, Pro, Max) προορίζονται αποκλειστικά για το Claude Code και το Claude.ai· η χρήση OAuth tokens από Claude Free/Pro/Max σε οποιοδήποτε άλλο προϊόν, εργαλείο ή υπηρεσία (συμπεριλαμβανομένου του Agent SDK) δεν επιτρέπεται και ενδέχεται να παραβιάζει τους Όρους Χρήσης Καταναλωτή. | Παρακαλούμε αποφύγετε προσωρινά τις ενσωματώσεις Claude Code OAuth για να αποτρέψετε πιθανή απώλεια. Αρχική ρήτρα: [Authentication and Credential Use](https://code.claude.com/docs/en/legal-and-compliance#authentication-and-credential-use). |
Το ZeroClaw είναι μια ελαφριά, μεταβλητή και επεκτάσιμη υποδομή AI βοηθού χτισμένη σε Rust. Συνδέει διάφορους παρόχους LLM (Anthropic, OpenAI, Google, Ollama, κλπ.) μέσω μιας ενοποιημένης διεπαφής και υποστηρίζει πολλαπλά κανάλια (Telegram, Matrix, CLI, κλπ.).
## Χαρακτηριστικά
### Κύρια Χαρακτηριστικά
- **Ελαφρύς χρόνος εκτέλεσης από προεπιλογή**οι συνήθεις ροές εργασίας CLI και κατάστασης τρέχουν σε φάκελο μνήμης λίγων megabyte σε release builds.
- **Οικονομική ανάπτυξη** — σχεδιασμένο για πλακέτες $10 και μικρές cloud instances, χωρίς βαριές εξαρτήσεις χρόνου εκτέλεσης.
- **Γρήγορες κρύες εκκινήσεις**ο χρόνος εκτέλεσης Rust με ένα δυαδικό αρχείο κρατά την εκκίνηση εντολών και daemon σχεδόν στιγμιαία.
- **Φορητή αρχιτεκτονική** — ένα δυαδικό αρχείο σε ARM, x86 και RISC-V με εναλλάξιμους παρόχους/κανάλια/εργαλεία.
- **Τοπικό-πρώτα Gateway** — ένα μόνο επίπεδο ελέγχου για sessions, κανάλια, εργαλεία, cron, SOPs και events.
- **Εισερχόμενα πολλαπλών καναλιών** — WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WebSocket και περισσότερα.
- **Ενορχήστρωση πολλαπλών πρακτόρων (Hands)** — αυτόνομα σμήνη πρακτόρων που τρέχουν σε πρόγραμμα και γίνονται πιο έξυπνα με τον χρόνο.
- **Τυπικές Διαδικασίες Λειτουργίας (SOPs)** — αυτοματοποίηση ροών εργασίας βάσει γεγονότων με MQTT, webhook, cron και triggers περιφερειακών.
- **Πίνακας ελέγχου Web** — React 19 + Vite web UI με συνομιλία σε πραγματικό χρόνο, περιηγητή μνήμης, επεξεργαστή ρυθμίσεων, διαχειριστή cron και επιθεωρητή εργαλείων.
- **Περιφερειακά υλικού** — ESP32, STM32 Nucleo, Arduino, Raspberry Pi GPIO μέσω του trait `Peripheral`.
- **Εργαλεία πρώτης κατηγορίας** — shell, file I/O, browser, git, web fetch/search, MCP, Jira, Notion, Google Workspace και 70+ ακόμη.
- **Hooks κύκλου ζωής** — παρεμβολή και τροποποίηση κλήσεων LLM, εκτελέσεων εργαλείων και μηνυμάτων σε κάθε στάδιο.
- **Πλατφόρμα δεξιοτήτων** — ενσωματωμένες, κοινοτικές και δεξιότητες χώρου εργασίας με έλεγχο ασφαλείας.
- **Υποστήριξη tunnel** — Cloudflare, Tailscale, ngrok, OpenVPN και custom tunnels για απομακρυσμένη πρόσβαση.
- **🦀 Γραμμένο σε Rust**: Υψηλή απόδοση, ασφάλεια μνήμης και αφαιρέσεις μηδενικού κόστους
- **🔌 Αγνωστικιστικό προς παρόχους**: Υποστηρίζει OpenAI, Anthropic, Google Gemini, Ollama και άλλους
- **📱 Πολυκάναλο**: Telegram, Matrix (με E2EE), CLI και άλλα
- **🧠 Προσαρμόσιμη μνήμη**: SQLite και Markdown backends
- **🛠️ Επεκτάσιμα εργαλεία**: Προσθέστε εύκολα προσαρμοσμένα εργαλεία
- **🔒 Ασφάλεια πρώτα**: Αντίστροφος proxy, σχεδιασμός προσανατολισμένος στο απόρρητο
### Γιατί οι ομάδες επιλέγουν το ZeroClaw
---
- **Ελαφρύ από προεπιλογή:** μικρό δυαδικό αρχείο Rust, γρήγορη εκκίνηση, χαμηλό αποτύπωμα μνήμης.
- **Ασφαλές από σχεδιασμό:** σύζευξη, αυστηρό sandboxing, ρητές λίστες επιτρεπόμενων, οριοθέτηση χώρου εργασίας.
- **Πλήρως εναλλάξιμο:** τα βασικά συστήματα είναι traits (providers, channels, tools, memory, tunnels).
- **Χωρίς εγκλωβισμό:** υποστήριξη παρόχου συμβατού με OpenAI + pluggable custom endpoints.
## Γρήγορη Εκκίνηση
## Στιγμιότυπο Benchmark (ZeroClaw vs OpenClaw, Αναπαραγώγιμο)
### Απαιτήσεις
Γρήγορο benchmark τοπικού μηχανήματος (macOS arm64, Φεβ 2026) κανονικοποιημένο για υλικό edge 0.8GHz.
- Rust 1.70+
- Ένα κλειδί API παρόχου LLM (Anthropic, OpenAI, κλπ.)
| | OpenClaw | NanoBot | PicoClaw | ZeroClaw 🦀 |
| ------------------------- | ------------- | -------------- | --------------- | -------------------- |
| **Γλώσσα** | TypeScript | Python | Go | **Rust** |
| **RAM** | > 1GB | > 100MB | < 10MB | **< 5MB** |
| **Εκκίνηση (0.8GHz core)** | > 500s | > 30s | < 1s | **< 10ms** |
| **Μέγεθος δυαδικού** | ~28MB (dist) | N/A (Scripts) | ~8MB | **~8.8 MB** |
| **Κόστος** | Mac Mini $599 | Linux SBC ~$50 | Linux Board $10 | **Οποιοδήποτε υλικό $10** |
> Σημειώσεις: Τα αποτελέσματα του ZeroClaw μετρήθηκαν σε release builds χρησιμοποιώντας `/usr/bin/time -l`. Το OpenClaw απαιτεί Node.js runtime (τυπικά ~390MB επιπλέον επιβάρυνση μνήμης), ενώ το NanoBot απαιτεί Python runtime. Τα PicoClaw και ZeroClaw είναι στατικά δυαδικά. Τα στοιχεία RAM παραπάνω αφορούν μνήμη χρόνου εκτέλεσης· οι απαιτήσεις μεταγλώττισης κατά τον χρόνο κατασκευής είναι υψηλότερες.
<p align="center">
<img src="docs/assets/zeroclaw-comparison.jpeg" alt="ZeroClaw vs OpenClaw Comparison" width="800" />
</p>
### Αναπαραγώγιμη τοπική μέτρηση
### Εγκατάσταση
```bash
# Κλωνοποιήστε το repository
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
# Κατασκευή
cargo build --release
ls -lh target/release/zeroclaw
/usr/bin/time -l target/release/zeroclaw --help
/usr/bin/time -l target/release/zeroclaw status
# Εκτέλεση
cargo run --release
```
## Όλα όσα δημιουργήσαμε μέχρι τώρα
### Βασική πλατφόρμα
- Επίπεδο ελέγχου Gateway HTTP/WS/SSE με sessions, παρουσία, ρύθμιση, cron, webhooks, web dashboard και σύζευξη.
- Επιφάνεια CLI: `gateway`, `agent`, `onboard`, `doctor`, `status`, `service`, `migrate`, `auth`, `cron`, `channel`, `skills`.
- Βρόχος ενορχήστρωσης πράκτορα με αποστολή εργαλείων, κατασκευή prompt, ταξινόμηση μηνυμάτων και φόρτωση μνήμης.
- Μοντέλο session με επιβολή πολιτικής ασφάλειας, επίπεδα αυτονομίας και πύλη έγκρισης.
- Ανθεκτικό περιτύλιγμα παρόχου με failover, retry και δρομολόγηση μοντέλων σε 20+ backends LLM.
### Κανάλια
Κανάλια: WhatsApp (native), Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, DingTalk, Lark, Mattermost, Nextcloud Talk, Nostr, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WATI, Mochat, Linq, Notion, WebSocket, ClawdTalk.
Με feature-gate: Matrix (`channel-matrix`), Lark (`channel-lark`), Nostr (`channel-nostr`).
### Πίνακας ελέγχου Web
Πίνακας ελέγχου web React 19 + Vite 6 + Tailwind CSS 4 που εξυπηρετείται απευθείας από το Gateway:
- **Dashboard** — επισκόπηση συστήματος, κατάσταση υγείας, uptime, παρακολούθηση κόστους
- **Agent Chat** — διαδραστική συνομιλία με τον πράκτορα
- **Memory** — περιήγηση και διαχείριση εγγραφών μνήμης
- **Config** — προβολή και επεξεργασία ρυθμίσεων
- **Cron** — διαχείριση προγραμματισμένων εργασιών
- **Tools** — περιήγηση διαθέσιμων εργαλείων
- **Logs** — προβολή αρχείων καταγραφής δραστηριότητας πράκτορα
- **Cost** — χρήση tokens και παρακολούθηση κόστους
- **Doctor** — διαγνωστικά υγείας συστήματος
- **Integrations** — κατάσταση ενσωμάτωσης και ρύθμιση
- **Pairing** — διαχείριση σύζευξης συσκευών
### Στόχοι firmware
| Στόχος | Πλατφόρμα | Σκοπός |
|--------|----------|---------|
| ESP32 | Espressif ESP32 | Ασύρματος περιφερειακός πράκτορας |
| ESP32-UI | ESP32 + Display | Πράκτορας με οπτική διεπαφή |
| STM32 Nucleo | STM32 (ARM Cortex-M) | Βιομηχανικό περιφερειακό |
| Arduino | Arduino | Βασική γέφυρα αισθητήρα/ενεργοποιητή |
| Uno Q Bridge | Arduino Uno | Σειριακή γέφυρα προς τον πράκτορα |
### Εργαλεία + αυτοματοποίηση
- **Βασικά:** shell, file read/write/edit, git operations, glob search, content search
- **Web:** browser control, web fetch, web search, screenshot, image info, PDF read
- **Ενσωματώσεις:** Jira, Notion, Google Workspace, Microsoft 365, LinkedIn, Composio, Pushover
- **MCP:** Model Context Protocol tool wrapper + deferred tool sets
- **Προγραμματισμός:** cron add/remove/update/run, schedule tool
- **Μνήμη:** recall, store, forget, knowledge, project intel
- **Προηγμένα:** delegate (agent-to-agent), swarm, model switch/routing, security ops, cloud ops
- **Υλικό:** board info, memory map, memory read (feature-gated)
### Χρόνος εκτέλεσης + ασφάλεια
- **Επίπεδα αυτονομίας:** ReadOnly, Supervised (προεπιλογή), Full.
- **Sandboxing:** απομόνωση χώρου εργασίας, αποκλεισμός διέλευσης διαδρομής, λίστες επιτρεπόμενων εντολών, απαγορευμένες διαδρομές, Landlock (Linux), Bubblewrap.
- **Περιορισμός ρυθμού:** μέγιστες ενέργειες ανά ώρα, μέγιστο κόστος ανά ημέρα (ρυθμιζόμενο).
- **Πύλη έγκρισης:** διαδραστική έγκριση για λειτουργίες μεσαίου/υψηλού κινδύνου.
- **E-stop:** δυνατότητα έκτακτης διακοπής.
- **129+ τεστ ασφαλείας** σε αυτοματοποιημένο CI.
### Λειτουργίες + πακετάρισμα
- Πίνακας ελέγχου web που εξυπηρετείται απευθείας από το Gateway.
- Υποστήριξη tunnel: Cloudflare, Tailscale, ngrok, OpenVPN, custom command.
- Docker runtime adapter για containerized εκτέλεση.
- CI/CD: beta (auto on push) → stable (manual dispatch) → Docker, crates.io, Scoop, AUR, Homebrew, tweet.
- Προκατασκευασμένα δυαδικά για Linux (x86_64, aarch64, armv7), macOS (x86_64, aarch64), Windows (x86_64).
## Ρύθμιση παραμέτρων
Ελάχιστο `~/.zeroclaw/config.toml`:
```toml
default_provider = "anthropic"
api_key = "sk-ant-..."
```
Πλήρης αναφορά ρύθμισης: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md).
### Ρύθμιση καναλιών
**Telegram:**
```toml
[channels.telegram]
bot_token = "123456:ABC-DEF..."
```
**Discord:**
```toml
[channels.discord]
token = "your-bot-token"
```
**Slack:**
```toml
[channels.slack]
bot_token = "xoxb-..."
app_token = "xapp-..."
```
**WhatsApp:**
```toml
[channels.whatsapp]
enabled = true
```
**Matrix:**
```toml
[channels.matrix]
homeserver_url = "https://matrix.org"
username = "@bot:matrix.org"
password = "..."
```
**Signal:**
```toml
[channels.signal]
phone_number = "+1234567890"
```
### Ρύθμιση tunnel
```toml
[tunnel]
kind = "cloudflare" # or "tailscale", "ngrok", "openvpn", "custom", "none"
```
Λεπτομέρειες: [Αναφορά καναλιών](docs/reference/api/channels-reference.md) · [Αναφορά ρυθμίσεων](docs/reference/api/config-reference.md)
### Υποστήριξη χρόνου εκτέλεσης (τρέχουσα)
- **`native`** (προεπιλογή) — άμεση εκτέλεση διεργασίας, ταχύτερη διαδρομή, ιδανική για αξιόπιστα περιβάλλοντα.
- **`docker`** — πλήρης απομόνωση container, επιβαλλόμενες πολιτικές ασφάλειας, απαιτεί Docker.
Ορίστε `runtime.kind = "docker"` για αυστηρό sandboxing ή απομόνωση δικτύου.
## Πιστοποίηση Συνδρομής (OpenAI Codex / Claude Code / Gemini)
Το ZeroClaw υποστηρίζει native προφίλ πιστοποίησης συνδρομής (πολλαπλοί λογαριασμοί, κρυπτογραφημένα σε αδράνεια).
- Αρχείο αποθήκευσης: `~/.zeroclaw/auth-profiles.json`
- Κλειδί κρυπτογράφησης: `~/.zeroclaw/.secret_key`
- Μορφή αναγνωριστικού προφίλ: `<provider>:<profile_name>` (παράδειγμα: `openai-codex:work`)
### Με Docker
```bash
# OpenAI Codex OAuth (ChatGPT subscription)
zeroclaw auth login --provider openai-codex --device-code
# Gemini OAuth
zeroclaw auth login --provider gemini --profile default
# Anthropic setup-token
zeroclaw auth paste-token --provider anthropic --profile default --auth-kind authorization
# Check / refresh / switch profile
zeroclaw auth status
zeroclaw auth refresh --provider openai-codex --profile default
zeroclaw auth use --provider openai-codex --profile work
# Run the agent with subscription auth
zeroclaw agent --provider openai-codex -m "hello"
zeroclaw agent --provider anthropic -m "hello"
docker run -d \
--name zeroclaw \
-e ANTHROPIC_API_KEY=your_key \
-v zeroclaw-data:/app/data \
zeroclaw/zeroclaw:latest
```
## Χώρος εργασίας πράκτορα + δεξιότητες
---
Ρίζα χώρου εργασίας: `~/.zeroclaw/workspace/` (ρυθμιζόμενο μέσω config).
## Ρύθμιση
Ενσωματωμένα αρχεία prompt:
- `IDENTITY.md` — προσωπικότητα και ρόλος πράκτορα
- `USER.md` — πλαίσιο χρήστη και προτιμήσεις
- `MEMORY.md` — μακροπρόθεσμα γεγονότα και μαθήματα
- `AGENTS.md` — συμβάσεις session και κανόνες αρχικοποίησης
- `SOUL.md` — βασική ταυτότητα και αρχές λειτουργίας
Το ZeroClaw χρησιμοποιεί ένα αρχείο ρύθμισης YAML. Από προεπιλογή, αναζητά το `config.yaml`.
Δεξιότητες: `~/.zeroclaw/workspace/skills/<skill>/SKILL.md` ή `SKILL.toml`.
```yaml
# Προεπιλεγμένος πάροχος
provider: anthropic
```bash
# List installed skills
zeroclaw skills list
# Ρύθμιση παρόχων
providers:
anthropic:
api_key: ${ANTHROPIC_API_KEY}
model: claude-3-5-sonnet-20241022
openai:
api_key: ${OPENAI_API_KEY}
model: gpt-4o
# Install from git
zeroclaw skills install https://github.com/user/my-skill.git
# Ρύθμιση μνήμης
memory:
backend: sqlite
path: data/memory.db
# Security audit before install
zeroclaw skills audit https://github.com/user/my-skill.git
# Remove a skill
zeroclaw skills remove my-skill
# Ρύθμιση καναλιών
channels:
telegram:
token: ${TELEGRAM_BOT_TOKEN}
```
## Εντολές CLI
```bash
# Διαχείριση χώρου εργασίας
zeroclaw onboard # Οδηγός καθοδηγούμενης ρύθμισης
zeroclaw status # Εμφάνιση κατάστασης daemon/agent
zeroclaw doctor # Εκτέλεση διαγνωστικών συστήματος
# Gateway + daemon
zeroclaw gateway # Εκκίνηση gateway server (127.0.0.1:42617)
zeroclaw daemon # Εκκίνηση πλήρους αυτόνομου χρόνου εκτέλεσης
# Πράκτορας
zeroclaw agent # Διαδραστική λειτουργία συνομιλίας
zeroclaw agent -m "message" # Λειτουργία μεμονωμένου μηνύματος
# Διαχείριση υπηρεσίας
zeroclaw service install # Εγκατάσταση ως υπηρεσία OS (launchd/systemd)
zeroclaw service start|stop|restart|status
# Κανάλια
zeroclaw channel list # Λίστα ρυθμισμένων καναλιών
zeroclaw channel doctor # Έλεγχος υγείας καναλιών
zeroclaw channel bind-telegram 123456789
# Cron + προγραμματισμός
zeroclaw cron list # Λίστα προγραμματισμένων εργασιών
zeroclaw cron add "*/5 * * * *" --prompt "Check system health"
zeroclaw cron remove <id>
# Μνήμη
zeroclaw memory list # Λίστα εγγραφών μνήμης
zeroclaw memory get <key> # Ανάκτηση μνήμης
zeroclaw memory stats # Στατιστικά μνήμης
# Προφίλ πιστοποίησης
zeroclaw auth login --provider <name>
zeroclaw auth status
zeroclaw auth use --provider <name> --profile <profile>
# Περιφερειακά υλικού
zeroclaw hardware discover # Σάρωση για συνδεδεμένες συσκευές
zeroclaw peripheral list # Λίστα συνδεδεμένων περιφερειακών
zeroclaw peripheral flash # Flash firmware σε συσκευή
# Μετεγκατάσταση
zeroclaw migrate openclaw --dry-run
zeroclaw migrate openclaw
# Συμπληρώσεις shell
source <(zeroclaw completions bash)
zeroclaw completions zsh > ~/.zfunc/_zeroclaw
```
Πλήρης αναφορά εντολών: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
<!-- markdownlint-disable MD001 MD024 -->
## Προαπαιτούμενα
<details>
<summary><strong>Windows</strong></summary>
#### Απαιτούμενα
1. **Visual Studio Build Tools** (παρέχει τον MSVC linker και το Windows SDK):
```powershell
winget install Microsoft.VisualStudio.2022.BuildTools
```
Κατά την εγκατάσταση (ή μέσω του Visual Studio Installer), επιλέξτε το workload **"Desktop development with C++"**.
2. **Rust toolchain:**
```powershell
winget install Rustlang.Rustup
```
Μετά την εγκατάσταση, ανοίξτε ένα νέο τερματικό και εκτελέστε `rustup default stable` για να βεβαιωθείτε ότι είναι ενεργό το stable toolchain.
3. **Επαλήθευση** ότι λειτουργούν και τα δύο:
```powershell
rustc --version
cargo --version
```
#### Προαιρετικά
- **Docker Desktop** — απαιτείται μόνο αν χρησιμοποιείτε τον [Docker sandboxed runtime](#υποστήριξη-χρόνου-εκτέλεσης-τρέχουσα) (`runtime.kind = "docker"`). Εγκατάσταση μέσω `winget install Docker.DockerDesktop`.
</details>
<details>
<summary><strong>Linux / macOS</strong></summary>
#### Απαιτούμενα
1. **Βασικά εργαλεία κατασκευής:**
- **Linux (Debian/Ubuntu):** `sudo apt install build-essential pkg-config`
- **Linux (Fedora/RHEL):** `sudo dnf group install development-tools && sudo dnf install pkg-config`
- **macOS:** Εγκαταστήστε Xcode Command Line Tools: `xcode-select --install`
2. **Rust toolchain:**
```bash
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
```
Δείτε [rustup.rs](https://rustup.rs) για λεπτομέρειες.
3. **Επαλήθευση** ότι λειτουργούν και τα δύο:
```bash
rustc --version
cargo --version
```
#### Εγκατάσταση με μία εντολή
Ή παραλείψτε τα παραπάνω βήματα και εγκαταστήστε τα πάντα (εξαρτήσεις συστήματος, Rust, ZeroClaw) με μία εντολή:
```bash
curl -LsSf https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/install.sh | bash
```
#### Απαιτήσεις πόρων μεταγλώττισης
Η κατασκευή από πηγαίο κώδικα χρειάζεται περισσότερους πόρους από την εκτέλεση του τελικού δυαδικού:
| Πόρος | Ελάχιστο | Συνιστώμενο |
| -------------- | ------- | ----------- |
| **RAM + swap** | 2 GB | 4 GB+ |
| **Ελεύθερος δίσκος** | 6 GB | 10 GB+ |
Αν ο host σας είναι κάτω από το ελάχιστο, χρησιμοποιήστε προκατασκευασμένα δυαδικά:
```bash
./install.sh --prefer-prebuilt
```
Για εγκατάσταση αποκλειστικά δυαδικού χωρίς εναλλακτική πηγαίου κώδικα:
```bash
./install.sh --prebuilt-only
```
#### Προαιρετικά
- **Docker** — απαιτείται μόνο αν χρησιμοποιείτε τον [Docker sandboxed runtime](#υποστήριξη-χρόνου-εκτέλεσης-τρέχουσα) (`runtime.kind = "docker"`). Εγκατάσταση μέσω του package manager σας ή [docker.com](https://docs.docker.com/engine/install/).
> **Σημείωση:** Η προεπιλεγμένη `cargo build --release` χρησιμοποιεί `codegen-units=1` για μείωση της μέγιστης πίεσης μεταγλώττισης. Για ταχύτερες κατασκευές σε ισχυρά μηχανήματα, χρησιμοποιήστε `cargo build --profile release-fast`.
</details>
<!-- markdownlint-enable MD001 MD024 -->
### Προκατασκευασμένα δυαδικά
Τα assets έκδοσης δημοσιεύονται για:
- Linux: `x86_64`, `aarch64`, `armv7`
- macOS: `x86_64`, `aarch64`
- Windows: `x86_64`
Κατεβάστε τα τελευταία assets από:
<https://github.com/zeroclaw-labs/zeroclaw/releases/latest>
---
## Τεκμηρίωση
Χρησιμοποιήστε τα όταν έχετε ολοκληρώσει τη ροή onboarding και θέλετε τη βαθύτερη αναφορά.
Για λεπτομερή τεκμηρίωση, δείτε:
- Ξεκινήστε με το [ευρετήριο τεκμηρίωσης](docs/README.md) για πλοήγηση και "τι βρίσκεται πού."
- Διαβάστε την [επισκόπηση αρχιτεκτονικής](docs/architecture.md) για το πλήρες μοντέλο συστήματος.
- Χρησιμοποιήστε την [αναφορά ρυθμίσεων](docs/reference/api/config-reference.md) όταν χρειάζεστε κάθε κλειδί και παράδειγμα.
- Εκτελέστε το Gateway σύμφωνα με το βιβλίο με το [εγχειρίδιο λειτουργίας](docs/ops/operations-runbook.md).
- Ακολουθήστε [ZeroClaw Onboard](#γρήγορη-εκκίνηση-tldr) για καθοδηγούμενη ρύθμιση.
- Αντιμετωπίστε κοινά σφάλματα με τον [οδηγό αντιμετώπισης προβλημάτων](docs/ops/troubleshooting.md).
- Ελέγξτε τις [οδηγίες ασφάλειας](docs/security/README.md) πριν εκθέσετε οτιδήποτε.
- [Κόμβος Τεκμηρίωσης](docs/README.md)
- [Αναφορά Εντολών](docs/commands-reference.md)
- [Αναφορά Παρόχων](docs/providers-reference.md)
- [Αναφορά Καναλιών](docs/channels-reference.md)
- [Αναφορά Ρυθμίσεων](docs/config-reference.md)
### Αναφορά τεκμηρίωσης
- Κόμβος τεκμηρίωσης: [docs/README.md](docs/README.md)
- Ενοποιημένος πίνακας περιεχομένων: [docs/SUMMARY.md](docs/SUMMARY.md)
- Αναφορά εντολών: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
- Αναφορά ρυθμίσεων: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md)
- Αναφορά παρόχων: [docs/reference/api/providers-reference.md](docs/reference/api/providers-reference.md)
- Αναφορά καναλιών: [docs/reference/api/channels-reference.md](docs/reference/api/channels-reference.md)
- Εγχειρίδιο λειτουργίας: [docs/ops/operations-runbook.md](docs/ops/operations-runbook.md)
- Αντιμετώπιση προβλημάτων: [docs/ops/troubleshooting.md](docs/ops/troubleshooting.md)
### Τεκμηρίωση συνεργασίας
- Οδηγός συνεισφοράς: [CONTRIBUTING.md](CONTRIBUTING.md)
- Πολιτική ροής εργασίας PR: [docs/contributing/pr-workflow.md](docs/contributing/pr-workflow.md)
- Οδηγός ροής εργασίας CI: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- Εγχειρίδιο αξιολογητή: [docs/contributing/reviewer-playbook.md](docs/contributing/reviewer-playbook.md)
- Πολιτική αποκάλυψης ασφάλειας: [SECURITY.md](SECURITY.md)
- Πρότυπο τεκμηρίωσης: [docs/contributing/doc-template.md](docs/contributing/doc-template.md)
### Ανάπτυξη + λειτουργίες
- Οδηγός ανάπτυξης δικτύου: [docs/ops/network-deployment.md](docs/ops/network-deployment.md)
- Εγχειρίδιο proxy agent: [docs/ops/proxy-agent-playbook.md](docs/ops/proxy-agent-playbook.md)
- Οδηγοί υλικού: [docs/hardware/README.md](docs/hardware/README.md)
## Smooth Crab 🦀
Το ZeroClaw δημιουργήθηκε για τον smooth crab 🦀, έναν γρήγορο και αποδοτικό βοηθό AI. Δημιουργήθηκε από τον Argenis De La Rosa και την κοινότητα.
- [zeroclawlabs.ai](https://zeroclawlabs.ai)
- [@zeroclawlabs](https://x.com/zeroclawlabs)
## Υποστήριξη ZeroClaw
Αν το ZeroClaw βοηθά τη δουλειά σας και θέλετε να υποστηρίξετε τη συνεχιζόμενη ανάπτυξη, μπορείτε να κάνετε δωρεά εδώ:
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=for-the-badge&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
### 🙏 Ειδικές Ευχαριστίες
Ένα εγκάρδιο ευχαριστώ στις κοινότητες και τα ιδρύματα που εμπνέουν και τροφοδοτούν αυτό το έργο ανοιχτού κώδικα:
- **Harvard University**για την καλλιέργεια πνευματικής περιέργειας και την ώθηση των ορίων του εφικτού.
- **MIT**για την υπεράσπιση της ανοιχτής γνώσης, του ανοιχτού κώδικα και της πεποίθησης ότι η τεχνολογία πρέπει να είναι προσβάσιμη σε όλους.
- **Sundai Club**για την κοινότητα, την ενέργεια και την ακατάπαυστη επιθυμία να χτίζουμε πράγματα που έχουν σημασία.
- **Ο Κόσμος & Πέρα** 🌍✨ — σε κάθε συνεισφέροντα, ονειροπόλο και δημιουργό εκεί έξω που κάνει τον ανοιχτό κώδικα δύναμη για το καλό. Αυτό είναι για εσένα.
Χτίζουμε ανοιχτά γιατί οι καλύτερες ιδέες έρχονται από παντού. Αν διαβάζεις αυτό, είσαι μέρος του. Καλωσήρθες. 🦀❤️
---
## Συνεισφορά
Νέος στο ZeroClaw; Ψάξτε για issues με ετικέτα [`good first issue`](https://github.com/zeroclaw-labs/zeroclaw/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) — δείτε τον [Οδηγό Συνεισφοράς](CONTRIBUTING.md#first-time-contributors) για το πώς να ξεκινήσετε. PR με AI/vibe-coding καλοδεχούμενα! 🤖
Δείτε [CONTRIBUTING.md](CONTRIBUTING.md) και [CLA.md](docs/contributing/cla.md). Υλοποιήστε ένα trait, υποβάλετε ένα PR:
- Οδηγός ροής εργασίας CI: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- Νέο `Provider``src/providers/`
- Νέο `Channel``src/channels/`
- Νέο `Observer``src/observability/`
- Νέο `Tool``src/tools/`
- Νέο `Memory``src/memory/`
- Νέο `Tunnel``src/tunnel/`
- Νέο `Peripheral``src/peripherals/`
- Νέο `Skill``~/.zeroclaw/workspace/skills/<name>/`
<!-- BEGIN:RECENT_CONTRIBUTORS -->
<!-- END:RECENT_CONTRIBUTORS -->
## ⚠️ Επίσημο Αποθετήριο & Προειδοποίηση Πλαστοπροσωπίας
**Αυτό είναι το μόνο επίσημο αποθετήριο ZeroClaw:**
> https://github.com/zeroclaw-labs/zeroclaw
Οποιοδήποτε άλλο αποθετήριο, οργανισμός, τομέας ή πακέτο που ισχυρίζεται ότι είναι "ZeroClaw" ή υπονοεί σχέση με τα ZeroClaw Labs είναι **μη εξουσιοδοτημένο και δεν σχετίζεται με αυτό το έργο**. Τα γνωστά μη εξουσιοδοτημένα forks θα αναφέρονται στο [TRADEMARK.md](docs/maintainers/trademark.md).
Αν αντιμετωπίσετε πλαστοπροσωπία ή κατάχρηση εμπορικού σήματος, παρακαλούμε [ανοίξτε ένα issue](https://github.com/zeroclaw-labs/zeroclaw/issues).
Οι συνεισφορές είναι ευπρόσδεκτες! Παρακαλώ διαβάστε τον [Οδηγό Συνεισφοράς](CONTRIBUTING.md).
---
## Άδεια
Το ZeroClaw έχει διπλή άδεια για μέγιστη ανοιχτότητα και προστασία συνεισφερόντων:
Αυτό το έργο έχει διπλή άδεια:
| Άδεια | Περίπτωση χρήσης |
|---|---|
| [MIT](LICENSE-MIT) | Ανοιχτός κώδικας, έρευνα, ακαδημαϊκή, προσωπική χρήση |
| [Apache 2.0](LICENSE-APACHE) | Προστασία πατεντών, θεσμική, εμπορική ανάπτυξη |
- MIT License
- Apache License, έκδοση 2.0
Μπορείτε να επιλέξετε οποιαδήποτε άδεια. **Οι συνεισφέροντες παρέχουν αυτόματα δικαιώματα και στις δύο** — δείτε [CLA.md](docs/contributing/cla.md) για την πλήρη συμφωνία συνεισφοράς.
### Εμπορικό σήμα
Το όνομα **ZeroClaw** και το λογότυπο είναι εμπορικά σήματα της ZeroClaw Labs. Αυτή η άδεια δεν παρέχει δικαίωμα χρήσης τους για να υπονοήσετε υποστήριξη ή σχέση. Δείτε [TRADEMARK.md](docs/maintainers/trademark.md) για επιτρεπόμενες και απαγορευμένες χρήσεις.
### Προστασίες Συνεισφερόντων
- **Διατηρείτε τα πνευματικά δικαιώματα** των συνεισφορών σας
- **Χορήγηση πατεντών** (Apache 2.0) σας προστατεύει από αξιώσεις πατεντών άλλων συνεισφερόντων
- Οι συνεισφορές σας **αποδίδονται μόνιμα** στο ιστορικό commit και στο [NOTICE](NOTICE)
- Δεν μεταβιβάζονται δικαιώματα εμπορικού σήματος με τη συνεισφορά
Δείτε τα [LICENSE-APACHE](LICENSE-APACHE) και [LICENSE-MIT](LICENSE-MIT) για λεπτομέρειες.
---
**ZeroClaw** — Μηδενική επιβάρυνση. Μηδενικοί συμβιβασμοί. Ανάπτυξη οπουδήποτε. Εναλλαγή οτιδήποτε. 🦀
## Κοινότητα
## Συνεισφέροντες
- [Telegram](https://t.me/zeroclawlabs)
- [Facebook Group](https://www.facebook.com/groups/zeroclaw)
- [WeChat Group](https://zeroclawlabs.cn/group.jpg)
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors">
<img src="https://contrib.rocks/image?repo=zeroclaw-labs/zeroclaw" alt="ZeroClaw contributors" />
</a>
---
Αυτή η λίστα δημιουργείται από το γράφημα συνεισφερόντων του GitHub και ενημερώνεται αυτόματα.
## Χορηγοί
## Ιστορικό Αστεριών
Αν το ZeroClaw είναι χρήσιμο για εσάς, παρακαλώ σκεφτείτε να μας αγοράσετε έναν καφέ:
<p align="center">
<a href="https://www.star-history.com/#zeroclaw-labs/zeroclaw&type=date&legend=top-left">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&theme=dark&legend=top-left" />
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
</picture>
</a>
</p>
[![Buy Me a Coffee](https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee)](https://buymeacoffee.com/argenistherose)
<!-- BEGIN:RECENT_CONTRIBUTORS -->
### 🌟 Recent Contributors (v0.3.1)
3 contributors shipped features, fixes, and improvements in this release cycle:
- **Argenis**
- **argenis de la rosa**
- **Claude Opus 4.6**
Thank you to everyone who opened issues, reviewed PRs, translated docs, and helped test. Every contribution matters. 🦀
<!-- END:RECENT_CONTRIBUTORS -->

File diff suppressed because it is too large Load Diff

View File

@ -1,29 +1,23 @@
<p align="center">
<img src="https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/docs/assets/zeroclaw-banner.png" alt="ZeroClaw" width="600" />
<img src="zeroclaw.png" alt="ZeroClaw" width="200" />
</p>
<h1 align="center">🦀 ZeroClaw — Henkilokohtainen tekoalyavustaja</h1>
<h1 align="center">ZeroClaw 🦀</h1>
<p align="center">
<strong>Nolla ylimaaraa. Nolla kompromisseja. 100% Rust. 100% Agnostinen.</strong><br>
⚡️ <strong>Toimii $10 laitteistolla alle 5MB RAM:lla: Se on 99% vahemman muistia kuin OpenClaw ja 98% halvempaa kuin Mac mini!</strong>
<strong>Noll overhead. Noll kompromissi. 100% Rust. 100% Agnostinen.</strong><br>
⚡️ <strong>Ajaa $10 laitteistolla <5MB RAM:lla: Tämä on 99% vähemmän muistia kuin OpenClaw ja 98% halvempi kuin Mac mini!</strong>
</p>
<p align="center">
<a href="LICENSE-APACHE"><img src="https://img.shields.io/badge/license-MIT%20OR%20Apache%202.0-blue.svg" alt="License: MIT OR Apache-2.0" /></a>
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors"><img src="https://img.shields.io/github/contributors/zeroclaw-labs/zeroclaw?color=green" alt="Contributors" /></a>
<a href="NOTICE"><img src="https://img.shields.io/badge/contributors-27+-green.svg" alt="Contributors" /></a>
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
<a href="https://x.com/zeroclawlabs?s=21"><img src="https://img.shields.io/badge/X-%40zeroclawlabs-000000?style=flat&logo=x&logoColor=white" alt="X: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclawlabs"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
<a href="https://discord.com/invite/wDshRVqRjx"><img src="https://img.shields.io/badge/Discord-Join-5865F2?style=flat&logo=discord&logoColor=white" alt="Discord" /></a>
<a href="https://www.instagram.com/therealzeroclaw"><img src="https://img.shields.io/badge/Instagram-%40therealzeroclaw-E4405F?style=flat&logo=instagram&logoColor=white" alt="Instagram: @therealzeroclaw" /></a>
<a href="https://www.tiktok.com/@zeroclawlabs"><img src="https://img.shields.io/badge/TikTok-%40zeroclawlabs-000000?style=flat&logo=tiktok&logoColor=white" alt="TikTok: @zeroclawlabs" /></a>
<a href="https://www.rednote.com/user/profile/69b735e6000000002603927e"><img src="https://img.shields.io/badge/RedNote-Official-FF2442?style=flat" alt="RedNote" /></a>
<a href="https://www.reddit.com/r/zeroclawlabs/"><img src="https://img.shields.io/badge/Reddit-r%2Fzeroclawlabs-FF4500?style=flat&logo=reddit&logoColor=white" alt="Reddit: r/zeroclawlabs" /></a>
</p>
<p align="center">
Rakennettu Harvardin, MIT:n ja Sundai.Club-yhteisöjen opiskelijoiden ja jasenien toimesta.
<a href="https://zeroclawlabs.cn/group.jpg"><img src="https://img.shields.io/badge/WeChat-Group-B7D7A8?logo=wechat&logoColor=white" alt="WeChat Group" /></a>
<a href="https://www.xiaohongshu.com/user/profile/67cbfc43000000000d008307?xsec_token=AB73VnYnGNx5y36EtnnZfGmAmS-6Wzv8WMuGpfwfkg6Yc%3D&xsec_source=pc_search"><img src="https://img.shields.io/badge/Xiaohongshu-Official-FF2442?style=flat" alt="Xiaohongshu: Official" /></a>
<a href="https://t.me/zeroclawlabs"><img src="https://img.shields.io/badge/Telegram-%40zeroclawlabs-26A5E4?style=flat&logo=telegram&logoColor=white" alt="Telegram: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclaw"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
</p>
<p align="center">
@ -61,695 +55,149 @@ Rakennettu Harvardin, MIT:n ja Sundai.Club-yhteisöjen opiskelijoiden ja jasenie
<a href="README.nb.md">🇳🇴 Norsk</a>
</p>
ZeroClaw on henkilokohtainen tekoalyavustaja, jota kaytat omilla laitteillasi. Se vastaa sinulle jo kayttamillasi kanavilla (WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work ja muut). Silla on web-hallintapaneeli reaaliaikaiseen ohjaukseen ja se voi yhdistaa laitteistoperiferioihin (ESP32, STM32, Arduino, Raspberry Pi). Gateway on vain ohjaustaaso — tuote on avustaja.
Jos haluat henkilokohtaisen, yhden kayttajan avustajan, joka tuntuu paikalliselta, nopealta ja aina paalla olevalta, tama on se.
<p align="center">
<a href="https://zeroclawlabs.ai">Verkkosivusto</a> ·
<a href="docs/README.md">Dokumentaatio</a> ·
<a href="docs/architecture.md">Arkkitehtuuri</a> ·
<a href="#pikaaloitus-tldr">Aloita</a> ·
<a href="#siirtyminen-openclawsta">Siirtyminen OpenClawsta</a> ·
<a href="docs/ops/troubleshooting.md">Vianetsinta</a> ·
<a href="https://discord.com/invite/wDshRVqRjx">Discord</a>
</p>
> **Suositeltu asennus:** suorita `zeroclaw onboard` terminaalissasi. ZeroClaw Onboard opastaa sinut vaihe vaiheelta gatewayn, tyotilan, kanavien ja palveluntarjoajan asennuksessa. Se on suositeltu asennuspolku ja toimii macOS:lla, Linuxilla ja Windowsilla (WSL2:n kautta). Uusi asennus? Aloita tasta: [Aloita](#pikaaloitus-tldr)
### Tilaustunnistautuminen (OAuth)
- **OpenAI Codex** (ChatGPT-tilaus)
- **Gemini** (Google OAuth)
- **Anthropic** (API-avain tai tunnistautumistokeni)
Mallien huomautus: vaikka monia palveluntarjoajia/malleja tuetaan, parhaan kokemuksen saamiseksi kayta vahvinta saatavilla olevaa uusimman sukupolven mallia. Katso [Onboarding](#pikaaloitus-tldr).
Mallien konfiguraatio + CLI: [Palveluntarjoajien viite](docs/reference/api/providers-reference.md)
Tunnistautumisprofiilin kierto (OAuth vs API-avaimet) + failover: [Mallien failover](docs/reference/api/providers-reference.md)
## Asennus (suositeltu)
Ajoymparisto: Rust stable toolchain. Yksi binaari, ei ajoympariston riippuvuuksia.
### Homebrew (macOS/Linuxbrew)
```bash
brew install zeroclaw
```
### Yhden napsautuksen asennus
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./install.sh
```
`zeroclaw onboard` suoritetaan automaattisesti asennuksen jalkeen tyotilan ja palveluntarjoajan konfiguroimiseksi.
## Pikaaloitus (TL;DR)
Taysi aloittelijan opas (tunnistautuminen, paritus, kanavat): [Aloita](docs/setup-guides/one-click-bootstrap.md)
```bash
# Asennus + onboard
./install.sh --api-key "sk-..." --provider openrouter
# Kaynnista gateway (webhook-palvelin + web-hallintapaneeli)
zeroclaw gateway # oletus: 127.0.0.1:42617
zeroclaw gateway --port 0 # satunnainen portti (turvallisuuskovennettu)
# Puhu avustajalle
zeroclaw agent -m "Hello, ZeroClaw!"
# Interaktiivinen tila
zeroclaw agent
# Kaynnista taysi autonominen ajoymparisto (gateway + kanavat + cron + hands)
zeroclaw daemon
# Tarkista tila
zeroclaw status
# Suorita diagnostiikka
zeroclaw doctor
```
Paivitat? Suorita `zeroclaw doctor` paivityksen jalkeen.
### Lahdekoodista (kehitys)
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
cargo build --release --locked
cargo install --path . --force --locked
zeroclaw onboard
```
> **Kehitysvaihtoehto (ei globaalia asennusta):** lisaa komentoihin etuliite `cargo run --release --` (esimerkki: `cargo run --release -- status`).
## Siirtyminen OpenClawsta
ZeroClaw voi tuoda OpenClaw-tyotilasi, muistisi ja maaritykset:
```bash
# Esikatsele mita siirretaan (turvallinen, vain luku)
zeroclaw migrate openclaw --dry-run
# Suorita siirto
zeroclaw migrate openclaw
```
Tama siirtaa muistimerkinnot, tyotilan tiedostot ja maaritykset hakemistosta `~/.openclaw/` hakemistoon `~/.zeroclaw/`. Maaritykset muunnetaan automaattisesti JSON:sta TOML:ksi.
## Turvallisuuden oletusasetukset (DM-paasy)
ZeroClaw yhdistaa todellisiin viestintapintoihin. Kasittele saapuvia DM-viesteja luottamattomana syotteena.
Taysi turvallisuusopas: [SECURITY.md](SECURITY.md)
Oletuskayttaytyminen kaikilla kanavilla:
- **DM-paritus** (oletus): tuntemattomat lahettajat saavat lyhyen parituskoodin ja botti ei kasittele heidan viestiaan.
- Hyvaksy komennolla: `zeroclaw pairing approve <channel> <code>` (jonka jalkeen lahettaja lisataan paikalliselle sallittujen listalle).
- Julkiset saapuvat DM:t vaativat nimenomaisen opt-in-asetuksen `config.toml`-tiedostossa.
- Suorita `zeroclaw doctor` tunnistaaksesi riskilliset tai vaarinkonfiguroidut DM-kaytannot.
**Autonomiatasot:**
| Taso | Kayttaytyminen |
|------|----------------|
| `ReadOnly` | Agentti voi tarkkailla mutta ei toimia |
| `Supervised` (oletus) | Agentti toimii hyvaksynnalla keskitason/korkean riskin toiminnoissa |
| `Full` | Agentti toimii itsenaisesti kaytantorajojen sisalla |
**Sandboxing-kerrokset:** tyotilan eristys, polun lapikulun esto, komentojen sallittujen listat, kielletyt polut (`/etc`, `/root`, `~/.ssh`), nopeusrajoitus (max toiminnot/tunti, kustannus/paiva-rajoitukset).
---
<!-- BEGIN:WHATS_NEW -->
### 🚀 What's New in v0.3.1 (March 2026)
| Area | Highlights |
|---|---|
| ci | add Termux (aarch64-linux-android) release target |
<!-- END:WHATS_NEW -->
### 📢 Ilmoitukset
## Mikä on ZeroClaw?
Kayta tata taulua tarkeisiin ilmoituksiin (yhteensopivuutta rikkovat muutokset, turvallisuustiedotteet, yllapitoikkunat ja julkaisun estajat).
ZeroClaw on kevyt, muokattava ja laajennettava AI-assistentti-infrastruktuuri, joka on rakennettu Rustilla. Se yhdistää eri LLM-palveluntarjoajat (Anthropic, OpenAI, Google, Ollama jne.) yhtenäisen käyttöliittymän kautta ja tukee useita kanavia (Telegram, Matrix, CLI jne.).
| Paivamaara (UTC) | Taso | Ilmoitus | Toimenpide |
| ---------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 2026-02-19 | _Kriittinen_ | **Emme** ole yhteydessa `openagen/zeroclaw`-, `zeroclaw.org`- tai `zeroclaw.net`-sivustoihin. `zeroclaw.org`- ja `zeroclaw.net`-verkkotunnukset osoittavat talla hetkella `openagen/zeroclaw`-haaraan, ja tuo verkkotunnus/varasto esiintyy virallisen verkkosivustomme/projektimme nimissa. | Ala luota naista lahteista perasin oleviin tietoihin, binaareihin, varainkeruuseen tai ilmoituksiin. Kayta vain [tata varastoa](https://github.com/zeroclaw-labs/zeroclaw) ja vahvistettuja sosiaalisen median tilejamme. |
| 2026-02-21 | _Tarkea_ | Virallinen verkkosivustomme on nyt toiminnassa: [zeroclawlabs.ai](https://zeroclawlabs.ai). Kiitos karsivallisyydestanne julkaisun valmistelun aikana. Nakemme edelleen esiintymisyrityksia, joten **ala** liity mihinkaan sijoitus- tai varainkeruutoimintaan, joka vaittaa ZeroClaw-nimea, ellei se ole julkaistu virallisten kanaviemme kautta. | Kayta [tata varastoa](https://github.com/zeroclaw-labs/zeroclaw) ainoana totuuden lahteena. Seuraa [X (@zeroclawlabs)](https://x.com/zeroclawlabs?s=21), [Facebook (Group)](https://www.facebook.com/groups/zeroclawlabs) ja [Reddit (r/zeroclawlabs)](https://www.reddit.com/r/zeroclawlabs/) virallisia paivityksia varten. |
| 2026-02-19 | _Tarkea_ | Anthropic paivitti tunnistautumis- ja tunnistetietojen kaytonehdat 2026-02-19. Claude Code OAuth -tokenit (Free, Pro, Max) on tarkoitettu yksinomaan Claude Codelle ja Claude.ai:lle; OAuth-tokenien kayttaminen Claude Free/Pro/Max -palvelusta missaan muussa tuotteessa, tyokalussa tai palvelussa (mukaan lukien Agent SDK) ei ole sallittua ja voi rikkoa kuluttajakayttoehtoja. | Ole hyva ja valta valikaisesti Claude Code OAuth -integraatioita mahdollisen menetyksen estamiseksi. Alkuperainen lauseke: [Authentication and Credential Use](https://code.claude.com/docs/en/legal-and-compliance#authentication-and-credential-use). |
### Keskeiset Ominaisuudet
## Kohokodat
- **🦀 Kirjoitettu Rustilla**: Korkea suorituskyky, muistiturvallisuus ja nollakustannus-abstraktiot
- **🔌 Palveluntarjoaja-agnostinen**: Tukee OpenAI, Anthropic, Google Gemini, Ollama ja muita
- **📱 Monikanavainen**: Telegram, Matrix (E2EE:llä), CLI ja muut
- **🧠 Pluggaava muisti**: SQLite ja Markdown-backendit
- **🛠️ Laajennettavat työkalut**: Lisää mukautettuja työkaluja helposti
- **🔒 Turvallisuus edellä**: Käänteinen proxy, yksityisyys-edellä-suunnittelu
- **Kevyt ajoymparisto oletuksena** — tavalliset CLI- ja tilatyonkulut toimivat muutaman megatavun muistibudjetissa release-buildeissa.
- **Kustannustehokas kayttoönotto** — suunniteltu $10-korteille ja pienille pilvi-instansseille, ilman raskaita ajoympariston riippuvuuksia.
- **Nopeat kylmakaunnistykset** — yhden binaarin Rust-ajoymparisto pitaa komento- ja daemon-kaynnistyksen lahes valittomana.
- **Siirrettava arkkitehtuuri** — yksi binaari ARM-, x86- ja RISC-V-alustoilla vaihdettavilla palveluntarjoajilla/kanavilla/tyokaluilla.
- **Paikallinen-ensin Gateway** — yksi ohjaustaaso istunnoille, kanaville, tyokaluille, cronille, SOP:ille ja tapahtumille.
- **Monikanavainen saapuva** — WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WebSocket ja muut.
- **Moniagentin orkestrointi (Hands)** — autonomiset agenttiparvet, jotka toimivat aikataulutettusti ja alykkyytyvat ajan myota.
- **Vakiotoimintamenettelyt (SOPs)** — tapahtumapohjainen tyonkulun automatisointi MQTT-, webhook-, cron- ja periferia-laukaisijoilla.
- **Web-hallintapaneeli** — React 19 + Vite web-kayttoliittyma reaaliaikaisella chatilla, muistiselaimella, maaritysten muokkaimella, cron-hallinnalla ja tyokalujen tarkastimella.
- **Laitteistoperiferiat** — ESP32, STM32 Nucleo, Arduino, Raspberry Pi GPIO `Peripheral`-traitin kautta.
- **Ensiluokkaiset tyokalut** — shell, file I/O, browser, git, web fetch/search, MCP, Jira, Notion, Google Workspace ja 70+ lisaa.
- **Elinkaarikoukut** — LLM-kutsujen, tyokalujen suoritusten ja viestien sieppaus ja muokkaus joka vaiheessa.
- **Taitoplattformi** — sisaanrakennetut, yhteison ja tyotilan taidot turvallisuustarkastuksella.
- **Tunnelituki** — Cloudflare, Tailscale, ngrok, OpenVPN ja mukautetut tunnelit etapaasyyn.
---
### Miksi tiimit valitsevat ZeroClaw:n
## Pika-aloitus
- **Kevyt oletuksena:** pieni Rust-binaari, nopea kaynnistys, alhainen muistijalanjalki.
- **Turvallinen suunnittelulla:** paritus, tiukka sandboxing, nimenomaiset sallittujen listat, tyotilan rajaus.
- **Taysin vaihdettava:** ydinjarjestelmat ovat traiteja (providers, channels, tools, memory, tunnels).
- **Ei lukkiutumista:** OpenAI-yhteensopiva palveluntarjoajatuki + liitettavat mukautetut paatepisteet.
### Vaatimukset
## Vertailun tilannekuva (ZeroClaw vs OpenClaw, Toistettava)
- Rust 1.70+
- LLM-palveluntarjoajan API-avain (Anthropic, OpenAI jne.)
Paikallisen koneen pikavertailu (macOS arm64, helmi 2026) normalisoitu 0.8GHz reunalaitteistolle.
| | OpenClaw | NanoBot | PicoClaw | ZeroClaw 🦀 |
| ------------------------- | ------------- | -------------- | --------------- | -------------------- |
| **Kieli** | TypeScript | Python | Go | **Rust** |
| **RAM** | > 1GB | > 100MB | < 10MB | **< 5MB** |
| **Kaynnistys (0.8GHz core)** | > 500s | > 30s | < 1s | **< 10ms** |
| **Binaarin koko** | ~28MB (dist) | N/A (Scripts) | ~8MB | **~8.8 MB** |
| **Kustannus** | Mac Mini $599 | Linux SBC ~$50 | Linux Board $10 | **Mika tahansa laitteisto $10** |
> Huomautukset: ZeroClaw-tulokset mitattu release-buildeilla kayttaen `/usr/bin/time -l`. OpenClaw vaatii Node.js-ajoympariston (tyypillisesti ~390MB ylimaaraista muistikuormaa), kun taas NanoBot vaatii Python-ajoympariston. PicoClaw ja ZeroClaw ovat staattisia binaareja. Yllaolevat RAM-luvut ovat ajoaikaista muistia; kaannosaikaiset vaatimukset ovat korkeammat.
<p align="center">
<img src="docs/assets/zeroclaw-comparison.jpeg" alt="ZeroClaw vs OpenClaw Comparison" width="800" />
</p>
### Toistettava paikallinen mittaus
### Asennus
```bash
# Kloonaa repository
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
# Rakenna
cargo build --release
ls -lh target/release/zeroclaw
/usr/bin/time -l target/release/zeroclaw --help
/usr/bin/time -l target/release/zeroclaw status
# Aja
cargo run --release
```
## Kaikki mita olemme rakentaneet tahan mennessa
### Ydinplattformi
- Gateway HTTP/WS/SSE -ohjaustaaso istunnoilla, lasnaololla, maarityksilla, cronilla, webhookeilla, web-hallintapaneelilla ja parituksella.
- CLI-pinta: `gateway`, `agent`, `onboard`, `doctor`, `status`, `service`, `migrate`, `auth`, `cron`, `channel`, `skills`.
- Agentin orkestroinnin silmukka tyokalujen lahettamisella, kehotteen rakentamisella, viestien luokittelulla ja muistin lataamisella.
- Istuntomalli turvallisuuskaytannon noudattamisella, autonomiatasoilla ja hyvaksyntaporttauksella.
- Kestava palveluntarjoajan kapselointi failoverilla, uudelleenyrityksella ja mallien reitityksella 20+ LLM-taustalle.
### Kanavat
Kanavat: WhatsApp (native), Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, DingTalk, Lark, Mattermost, Nextcloud Talk, Nostr, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WATI, Mochat, Linq, Notion, WebSocket, ClawdTalk.
Feature-gated: Matrix (`channel-matrix`), Lark (`channel-lark`), Nostr (`channel-nostr`).
### Web-hallintapaneeli
React 19 + Vite 6 + Tailwind CSS 4 web-hallintapaneeli, jota tarjoillaan suoraan Gatewaysta:
- **Dashboard** — jarjestelman yleiskatsaus, terveydentila, kaynnissaoloaika, kustannusten seuranta
- **Agent Chat** — interaktiivinen keskustelu agentin kanssa
- **Memory** — muistimerkintöjen selaus ja hallinta
- **Config** — maaritysten katselu ja muokkaus
- **Cron** — ajastettujen tehtavien hallinta
- **Tools** — kaytettavissa olevien tyokalujen selaus
- **Logs** — agentin toimintalokien katselu
- **Cost** — tokenien kaytto ja kustannusten seuranta
- **Doctor** — jarjestelman terveysdiagnostiikka
- **Integrations** — integraatioiden tila ja asennus
- **Pairing** — laiteparituksen hallinta
### Firmware-kohteet
| Kohde | Alusta | Tarkoitus |
|-------|--------|-----------|
| ESP32 | Espressif ESP32 | Langaton periferia-agentti |
| ESP32-UI | ESP32 + Display | Agentti visuaalisella kayttoliittymalla |
| STM32 Nucleo | STM32 (ARM Cortex-M) | Teollinen periferia |
| Arduino | Arduino | Perusanturi-/toimilaitesilta |
| Uno Q Bridge | Arduino Uno | Sarjasilta agenttiin |
### Tyokalut + automatisointi
- **Ydin:** shell, file read/write/edit, git operations, glob search, content search
- **Web:** browser control, web fetch, web search, screenshot, image info, PDF read
- **Integraatiot:** Jira, Notion, Google Workspace, Microsoft 365, LinkedIn, Composio, Pushover
- **MCP:** Model Context Protocol tool wrapper + deferred tool sets
- **Ajastus:** cron add/remove/update/run, schedule tool
- **Muisti:** recall, store, forget, knowledge, project intel
- **Edistyneet:** delegate (agent-to-agent), swarm, model switch/routing, security ops, cloud ops
- **Laitteisto:** board info, memory map, memory read (feature-gated)
### Ajoymparisto + turvallisuus
- **Autonomiatasot:** ReadOnly, Supervised (oletus), Full.
- **Sandboxing:** tyotilan eristys, polun lapikulun esto, komentojen sallittujen listat, kielletyt polut, Landlock (Linux), Bubblewrap.
- **Nopeusrajoitus:** max toiminnot tunnissa, max kustannus paivassa (konfiguroitavissa).
- **Hyvaksyntaporttaus:** interaktiivinen hyvaksynta keskitason/korkean riskin toiminnoille.
- **E-stop:** hatapysaytysmahdollisuus.
- **129+ turvallisuustestia** automatisoidussa CI:ssa.
### Toiminnot + paketointi
- Web-hallintapaneeli tarjoillaan suoraan Gatewaysta.
- Tunnelituki: Cloudflare, Tailscale, ngrok, OpenVPN, mukautettu komento.
- Docker runtime -adapteri konttiin ajettuun suoritukseen.
- CI/CD: beta (auto on push) → stable (manual dispatch) → Docker, crates.io, Scoop, AUR, Homebrew, tweet.
- Valmiit binaarit Linux (x86_64, aarch64, armv7), macOS (x86_64, aarch64), Windows (x86_64).
## Maaritykset
Minimaalinen `~/.zeroclaw/config.toml`:
```toml
default_provider = "anthropic"
api_key = "sk-ant-..."
```
Taysi maaritysviite: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md).
### Kanavan maaritys
**Telegram:**
```toml
[channels.telegram]
bot_token = "123456:ABC-DEF..."
```
**Discord:**
```toml
[channels.discord]
token = "your-bot-token"
```
**Slack:**
```toml
[channels.slack]
bot_token = "xoxb-..."
app_token = "xapp-..."
```
**WhatsApp:**
```toml
[channels.whatsapp]
enabled = true
```
**Matrix:**
```toml
[channels.matrix]
homeserver_url = "https://matrix.org"
username = "@bot:matrix.org"
password = "..."
```
**Signal:**
```toml
[channels.signal]
phone_number = "+1234567890"
```
### Tunnelin maaritys
```toml
[tunnel]
kind = "cloudflare" # or "tailscale", "ngrok", "openvpn", "custom", "none"
```
Lisatietoja: [Kanavaviite](docs/reference/api/channels-reference.md) · [Maaritysviite](docs/reference/api/config-reference.md)
### Ajoymparistotuki (nykyinen)
- **`native`** (oletus) — suora prosessin suoritus, nopein polku, ihanteellinen luotetuissa ymparistoissa.
- **`docker`** — taysi konttieristys, pakotetut turvallisuuskaytannot, vaatii Dockerin.
Aseta `runtime.kind = "docker"` tiukkaan sandboxingiin tai verkon eristykseen.
## Tilaustunnistautuminen (OpenAI Codex / Claude Code / Gemini)
ZeroClaw tukee tilausnatiiveja tunnistautumisprofiileja (useita tileja, salattu levossa).
- Tallennustiedosto: `~/.zeroclaw/auth-profiles.json`
- Salausavain: `~/.zeroclaw/.secret_key`
- Profiilin tunnistemuoto: `<provider>:<profile_name>` (esimerkki: `openai-codex:work`)
### Dockerilla
```bash
# OpenAI Codex OAuth (ChatGPT subscription)
zeroclaw auth login --provider openai-codex --device-code
# Gemini OAuth
zeroclaw auth login --provider gemini --profile default
# Anthropic setup-token
zeroclaw auth paste-token --provider anthropic --profile default --auth-kind authorization
# Check / refresh / switch profile
zeroclaw auth status
zeroclaw auth refresh --provider openai-codex --profile default
zeroclaw auth use --provider openai-codex --profile work
# Run the agent with subscription auth
zeroclaw agent --provider openai-codex -m "hello"
zeroclaw agent --provider anthropic -m "hello"
docker run -d \
--name zeroclaw \
-e ANTHROPIC_API_KEY=your_key \
-v zeroclaw-data:/app/data \
zeroclaw/zeroclaw:latest
```
## Agentin tyotila + taidot
---
Tyotilan juuri: `~/.zeroclaw/workspace/` (konfiguroitavissa maaritysten kautta).
## Konfiguraatio
Injektoidut kehotetiedostot:
- `IDENTITY.md` — agentin persoona ja rooli
- `USER.md` — kayttajan konteksti ja mieltymykset
- `MEMORY.md` — pitkaaikaiset tosiasiat ja opit
- `AGENTS.md` — istuntokonventiot ja alustussaannot
- `SOUL.md` — ydinidentiteetti ja toimintaperiaatteet
ZeroClaw käyttää YAML-konfiguraatiotiedostoa. Oletuksena se etsii `config.yaml`.
Taidot: `~/.zeroclaw/workspace/skills/<skill>/SKILL.md` tai `SKILL.toml`.
```yaml
# Oletuspalveluntarjoaja
provider: anthropic
```bash
# List installed skills
zeroclaw skills list
# Palveluntarjoajien konfiguraatio
providers:
anthropic:
api_key: ${ANTHROPIC_API_KEY}
model: claude-3-5-sonnet-20241022
openai:
api_key: ${OPENAI_API_KEY}
model: gpt-4o
# Install from git
zeroclaw skills install https://github.com/user/my-skill.git
# Muistin konfiguraatio
memory:
backend: sqlite
path: data/memory.db
# Security audit before install
zeroclaw skills audit https://github.com/user/my-skill.git
# Remove a skill
zeroclaw skills remove my-skill
# Kanavien konfiguraatio
channels:
telegram:
token: ${TELEGRAM_BOT_TOKEN}
```
## CLI-komennot
```bash
# Tyotilan hallinta
zeroclaw onboard # Opastettu asennusvelho
zeroclaw status # Nayta daemon/agentin tila
zeroclaw doctor # Suorita jarjestelman diagnostiikka
# Gateway + daemon
zeroclaw gateway # Kaynnista gateway-palvelin (127.0.0.1:42617)
zeroclaw daemon # Kaynnista taysi autonominen ajoymparisto
# Agentti
zeroclaw agent # Interaktiivinen keskustelutila
zeroclaw agent -m "message" # Yksittaisen viestin tila
# Palvelun hallinta
zeroclaw service install # Asenna OS-palveluna (launchd/systemd)
zeroclaw service start|stop|restart|status
# Kanavat
zeroclaw channel list # Listaa konfiguroidut kanavat
zeroclaw channel doctor # Tarkista kanavien terveys
zeroclaw channel bind-telegram 123456789
# Cron + ajastus
zeroclaw cron list # Listaa ajastetut tehtavat
zeroclaw cron add "*/5 * * * *" --prompt "Check system health"
zeroclaw cron remove <id>
# Muisti
zeroclaw memory list # Listaa muistimerkinnot
zeroclaw memory get <key> # Hae muisti
zeroclaw memory stats # Muistin tilastot
# Tunnistautumisprofiilit
zeroclaw auth login --provider <name>
zeroclaw auth status
zeroclaw auth use --provider <name> --profile <profile>
# Laitteistoperiferiat
zeroclaw hardware discover # Etsi yhdistettuja laitteita
zeroclaw peripheral list # Listaa yhdistetyt periferiat
zeroclaw peripheral flash # Flash-ohjelma laitteeseen
# Siirto
zeroclaw migrate openclaw --dry-run
zeroclaw migrate openclaw
# Shell-taydennykset
source <(zeroclaw completions bash)
zeroclaw completions zsh > ~/.zfunc/_zeroclaw
```
Taysi komentoreferenssi: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
<!-- markdownlint-disable MD001 MD024 -->
## Esivaatimukset
<details>
<summary><strong>Windows</strong></summary>
#### Vaaditut
1. **Visual Studio Build Tools** (tarjoaa MSVC-linkerin ja Windows SDK:n):
```powershell
winget install Microsoft.VisualStudio.2022.BuildTools
```
Asennuksen aikana (tai Visual Studio Installerin kautta) valitse **"Desktop development with C++"** -tyokuorma.
2. **Rust toolchain:**
```powershell
winget install Rustlang.Rustup
```
Asennuksen jalkeen avaa uusi terminaali ja suorita `rustup default stable` varmistaaksesi, etta vakaa toolchain on aktiivinen.
3. **Vahvista**, etta molemmat toimivat:
```powershell
rustc --version
cargo --version
```
#### Valinnainen
- **Docker Desktop** — vaaditaan vain kaytettaessa [Docker sandboxed runtime](#ajoymparistotuki-nykyinen) (`runtime.kind = "docker"`). Asenna komennolla `winget install Docker.DockerDesktop`.
</details>
<details>
<summary><strong>Linux / macOS</strong></summary>
#### Vaaditut
1. **Kaannostyokalut:**
- **Linux (Debian/Ubuntu):** `sudo apt install build-essential pkg-config`
- **Linux (Fedora/RHEL):** `sudo dnf group install development-tools && sudo dnf install pkg-config`
- **macOS:** Asenna Xcode Command Line Tools: `xcode-select --install`
2. **Rust toolchain:**
```bash
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
```
Katso [rustup.rs](https://rustup.rs) lisatietoja varten.
3. **Vahvista**, etta molemmat toimivat:
```bash
rustc --version
cargo --version
```
#### Yhden rivin asentaja
Tai ohita yllaolevat vaiheet ja asenna kaikki (jarjestelmariippuvuudet, Rust, ZeroClaw) yhdella komennolla:
```bash
curl -LsSf https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/install.sh | bash
```
#### Kaannosresurssivaatimukset
Lahdekoodista rakentaminen vaatii enemman resursseja kuin tuloksena olevan binaarin suorittaminen:
| Resurssi | Vahimmais | Suositeltu |
| -------------- | ------- | ----------- |
| **RAM + swap** | 2 GB | 4 GB+ |
| **Vapaa levy** | 6 GB | 10 GB+ |
Jos isantasi on vahimmaisvaatimuksen alla, kayta valmiita binaareja:
```bash
./install.sh --prefer-prebuilt
```
Pelkan binaarin asennukseen ilman lahdekoodi-vaihtoehtoa:
```bash
./install.sh --prebuilt-only
```
#### Valinnainen
- **Docker** — vaaditaan vain kaytettaessa [Docker sandboxed runtime](#ajoymparistotuki-nykyinen) (`runtime.kind = "docker"`). Asenna paketinhallintasi kautta tai [docker.com](https://docs.docker.com/engine/install/).
> **Huomautus:** Oletus `cargo build --release` kayttaa `codegen-units=1` kaannoshuippupaineen vahentamiseksi. Nopeampiin kaanntöihin tehokkailla koneilla kayta `cargo build --profile release-fast`.
</details>
<!-- markdownlint-enable MD001 MD024 -->
### Valmiit binaarit
Julkaisuresurssit julkaistaan seuraaville:
- Linux: `x86_64`, `aarch64`, `armv7`
- macOS: `x86_64`, `aarch64`
- Windows: `x86_64`
Lataa uusimmat resurssit osoitteesta:
<https://github.com/zeroclaw-labs/zeroclaw/releases/latest>
---
## Dokumentaatio
Kayta naita, kun olet ohittanut onboarding-kulun ja haluat syvemman viitteen.
Yksityiskohtaista dokumentaatiota varten katso:
- Aloita [dokumentaatioindeksista](docs/README.md) navigointiin ja "mika on missa" -tietoon.
- Lue [arkkitehtuurin yleiskatsaus](docs/architecture.md) taydelliseen jarjestelmamalliin.
- Kayta [maaritysviitetta](docs/reference/api/config-reference.md), kun tarvitset jokaisen avaimen ja esimerkin.
- Suorita Gateway kirjan mukaan [kayttokirjalla](docs/ops/operations-runbook.md).
- Noudata [ZeroClaw Onboard](#pikaaloitus-tldr) -palvelua opastettuun asennukseen.
- Korjaa yleisia vikoja [vianetsintaoppaalla](docs/ops/troubleshooting.md).
- Tarkista [turvallisuusohjeet](docs/security/README.md) ennen kuin paljastat mitaan.
- [Dokumentaatiokeskus](docs/README.md)
- [Komentojen Viite](docs/commands-reference.md)
- [Palveluntarjoajien Viite](docs/providers-reference.md)
- [Kanavien Viite](docs/channels-reference.md)
- [Konfiguraation Viite](docs/config-reference.md)
### Viitedokumentaatio
- Dokumentaatiokeskus: [docs/README.md](docs/README.md)
- Yhtenaistetty sisallysluettelo: [docs/SUMMARY.md](docs/SUMMARY.md)
- Komentoreferenssi: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
- Maaritysviite: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md)
- Palveluntarjoajien viite: [docs/reference/api/providers-reference.md](docs/reference/api/providers-reference.md)
- Kanavaviite: [docs/reference/api/channels-reference.md](docs/reference/api/channels-reference.md)
- Kayttokirja: [docs/ops/operations-runbook.md](docs/ops/operations-runbook.md)
- Vianetsinta: [docs/ops/troubleshooting.md](docs/ops/troubleshooting.md)
### Yhteistyodokumentaatio
- Osallistumisopas: [CONTRIBUTING.md](CONTRIBUTING.md)
- PR-tyonkulun kaytanto: [docs/contributing/pr-workflow.md](docs/contributing/pr-workflow.md)
- CI-tyonkulun opas: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- Arvioijan kasikirja: [docs/contributing/reviewer-playbook.md](docs/contributing/reviewer-playbook.md)
- Turvallisuuden julkistuskaytanto: [SECURITY.md](SECURITY.md)
- Dokumentaatiomalli: [docs/contributing/doc-template.md](docs/contributing/doc-template.md)
### Kayttoönotto + toiminnot
- Verkkokayyttoönotto-opas: [docs/ops/network-deployment.md](docs/ops/network-deployment.md)
- Proxy-agentin kasikirja: [docs/ops/proxy-agent-playbook.md](docs/ops/proxy-agent-playbook.md)
- Laitteisto-oppaat: [docs/hardware/README.md](docs/hardware/README.md)
## Smooth Crab 🦀
ZeroClaw rakennettiin smooth crab 🦀 -kaveria varten, nopea ja tehokas tekoalyavustaja. Rakennettu Argenis De La Rosan ja yhteison toimesta.
- [zeroclawlabs.ai](https://zeroclawlabs.ai)
- [@zeroclawlabs](https://x.com/zeroclawlabs)
## Tue ZeroClaw:ta
Jos ZeroClaw auttaa tyossasi ja haluat tukea jatkuvaa kehitysta, voit lahjoittaa tassa:
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=for-the-badge&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
### 🙏 Erityiskiitokset
Sydamellinen kiitos yhteisöille ja instituutioille, jotka inspiroivat ja ruokkivat tata avoimen lahdekoodin tyota:
- **Harvard University** — alyllisen uteliaisuuden edistamisesta ja mahdollisuuksien rajojen tyontamisesta.
- **MIT** — avoimen tiedon, avoimen lahdekoodin ja uskon puolustamisesta, etta teknologian tulisi olla kaikkien saatavilla.
- **Sundai Club** — yhteisosta, energiasta ja leppymattomasta halusta rakentaa tarkeita asioita.
- **Maailma ja sen tuolla puolen** 🌍✨ — jokaiselle osallistujalle, haaveilijalle ja rakentajalle, joka tekee avoimesta lahdekoodista hyvan voiman. Tama on sinulle.
Rakennamme avoimesti, koska parhaat ideat tulevat kaikkialta. Jos luet taman, olet osa sita. Tervetuloa. 🦀❤️
---
## Osallistuminen
Uusi ZeroClaw:ssa? Etsi issueita merkinnalla [`good first issue`](https://github.com/zeroclaw-labs/zeroclaw/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) — katso [Osallistumisoppaamme](CONTRIBUTING.md#first-time-contributors) aloittaaksesi. AI/vibe-koodatut PR:t tervetulleita! 🤖
Katso [CONTRIBUTING.md](CONTRIBUTING.md) ja [CLA.md](docs/contributing/cla.md). Toteuta trait, laheta PR:
- CI-tyonkulun opas: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- Uusi `Provider``src/providers/`
- Uusi `Channel``src/channels/`
- Uusi `Observer``src/observability/`
- Uusi `Tool``src/tools/`
- Uusi `Memory``src/memory/`
- Uusi `Tunnel``src/tunnel/`
- Uusi `Peripheral``src/peripherals/`
- Uusi `Skill``~/.zeroclaw/workspace/skills/<name>/`
<!-- BEGIN:RECENT_CONTRIBUTORS -->
<!-- END:RECENT_CONTRIBUTORS -->
## ⚠️ Virallinen varasto ja esiintymisvaroitus
**Tama on ainoa virallinen ZeroClaw-varasto:**
> https://github.com/zeroclaw-labs/zeroclaw
Mika tahansa muu varasto, organisaatio, verkkotunnus tai paketti, joka vaittaa olevansa "ZeroClaw" tai viittaa yhteyteen ZeroClaw Labsin kanssa, on **luvaton eika liity tahan projektiin**. Tunnetut luvattomat forkit listataan [TRADEMARK.md](docs/maintainers/trademark.md)-tiedostossa.
Jos kohtaat esiintymista tai tavaramerkin vaarinkayttoa, ole hyva ja [avaa issue](https://github.com/zeroclaw-labs/zeroclaw/issues).
Osallistumiset ovat tervetulleita! Lue [Osallistumisopas](CONTRIBUTING.md).
---
## Lisenssi
ZeroClaw on kaksoislisenssoitu maksimaalisen avoimuuden ja osallistujien suojan takaamiseksi:
Tämä projekti on kaksoislisensoitu:
| Lisenssi | Kayttotapaus |
|---|---|
| [MIT](LICENSE-MIT) | Avoin lahdekoodi, tutkimus, akateeminen, henkilokohtainen kaytto |
| [Apache 2.0](LICENSE-APACHE) | Patenttisuoja, institutionaalinen, kaupallinen kayttoönotto |
- MIT License
- Apache License, versio 2.0
Voit valita kumman tahansa lisenssin. **Osallistujat myontavat automaattisesti oikeudet molempien alla** — katso [CLA.md](docs/contributing/cla.md) tayden osallistujasopimuksen.
### Tavaramerkki
**ZeroClaw**-nimi ja logo ovat ZeroClaw Labsin tavaramerkkeja. Tama lisenssi ei anna lupaa kayttaa niita tuen tai yhteyden vihjamiseen. Katso [TRADEMARK.md](docs/maintainers/trademark.md) sallittujen ja kiellettyjen kayttojen osalta.
### Osallistujien suojat
- **Sailytat tekijanoikeuden** osallistumisiisi
- **Patenttimyonnos** (Apache 2.0) suojaa sinua muiden osallistujien patenttivaatimuksilta
- Osallistumisesi ovat **pysyvasti attribuoitu** commit-historiassa ja [NOTICE](NOTICE)-tiedostossa
- Tavaramerkkioikeuksia ei siirreta osallistumalla
Katso [LICENSE-APACHE](LICENSE-APACHE) ja [LICENSE-MIT](LICENSE-MIT) yksityiskohdille.
---
**ZeroClaw** — Nolla ylimaaraa. Nolla kompromisseja. Kayttoönotto minne tahansa. Vaihda mita tahansa. 🦀
## Yhteisö
## Osallistujat
- [Telegram](https://t.me/zeroclawlabs)
- [Facebook Group](https://www.facebook.com/groups/zeroclaw)
- [WeChat Group](https://zeroclawlabs.cn/group.jpg)
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors">
<img src="https://contrib.rocks/image?repo=zeroclaw-labs/zeroclaw" alt="ZeroClaw contributors" />
</a>
---
Tama lista luodaan GitHubin osallistujakaaviosta ja paivittyy automaattisesti.
## Sponsorit
## Tahtihistoria
Jos ZeroClaw on hyödyllinen sinulle, harkitse kahvin ostamista meille:
<p align="center">
<a href="https://www.star-history.com/#zeroclaw-labs/zeroclaw&type=date&legend=top-left">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&theme=dark&legend=top-left" />
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
</picture>
</a>
</p>
[![Buy Me a Coffee](https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee)](https://buymeacoffee.com/argenistherose)
<!-- BEGIN:RECENT_CONTRIBUTORS -->
### 🌟 Recent Contributors (v0.3.1)
3 contributors shipped features, fixes, and improvements in this release cycle:
- **Argenis**
- **argenis de la rosa**
- **Claude Opus 4.6**
Thank you to everyone who opened issues, reviewed PRs, translated docs, and helped test. Every contribution matters. 🦀
<!-- END:RECENT_CONTRIBUTORS -->

File diff suppressed because it is too large Load Diff

View File

@ -1,32 +1,26 @@
<p align="center">
<img src="https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/docs/assets/zeroclaw-banner.png" alt="ZeroClaw" width="600" />
<img src="zeroclaw.png" alt="ZeroClaw" width="200" />
</p>
<h1 align="center">🦀 ZeroClaw — עוזר AI אישי</h1>
<h1 align="center">ZeroClaw 🦀</h1>
<p align="center">
<strong>אפס תקורה. אפס פשרות. 100% Rust. 100% אגנוסטי.</strong><br>
⚡️ <strong>רץ על חומרה של $10 עם פחות מ-5MB RAM: זה 99% פחות זיכרון מ-OpenClaw ו-98% זול יותר מ-Mac mini!</strong>
<p align="center" dir="rtl">
<strong>תקורת אפס. אין פשרות. 100% Rust. 100% אגנוסטי.</strong><br>
⚡️ <strong>פועל על חומרה ב-$10 עם <5MB זיכרון: זה 99% פחות זיכרון מ-OpenClaw ו-98% זול יותר מ-Mac mini!</strong>
</p>
<p align="center">
<a href="LICENSE-APACHE"><img src="https://img.shields.io/badge/license-MIT%20OR%20Apache%202.0-blue.svg" alt="License: MIT OR Apache-2.0" /></a>
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors"><img src="https://img.shields.io/github/contributors/zeroclaw-labs/zeroclaw?color=green" alt="Contributors" /></a>
<a href="NOTICE"><img src="https://img.shields.io/badge/contributors-27+-green.svg" alt="Contributors" /></a>
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
<a href="https://x.com/zeroclawlabs?s=21"><img src="https://img.shields.io/badge/X-%40zeroclawlabs-000000?style=flat&logo=x&logoColor=white" alt="X: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclawlabs"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
<a href="https://discord.com/invite/wDshRVqRjx"><img src="https://img.shields.io/badge/Discord-Join-5865F2?style=flat&logo=discord&logoColor=white" alt="Discord" /></a>
<a href="https://www.instagram.com/therealzeroclaw"><img src="https://img.shields.io/badge/Instagram-%40therealzeroclaw-E4405F?style=flat&logo=instagram&logoColor=white" alt="Instagram: @therealzeroclaw" /></a>
<a href="https://www.tiktok.com/@zeroclawlabs"><img src="https://img.shields.io/badge/TikTok-%40zeroclawlabs-000000?style=flat&logo=tiktok&logoColor=white" alt="TikTok: @zeroclawlabs" /></a>
<a href="https://www.rednote.com/user/profile/69b735e6000000002603927e"><img src="https://img.shields.io/badge/RedNote-Official-FF2442?style=flat" alt="RedNote" /></a>
<a href="https://www.reddit.com/r/zeroclawlabs/"><img src="https://img.shields.io/badge/Reddit-r%2Fzeroclawlabs-FF4500?style=flat&logo=reddit&logoColor=white" alt="Reddit: r/zeroclawlabs" /></a>
<a href="https://zeroclawlabs.cn/group.jpg"><img src="https://img.shields.io/badge/WeChat-Group-B7D7A8?logo=wechat&logoColor=white" alt="WeChat Group" /></a>
<a href="https://www.xiaohongshu.com/user/profile/67cbfc43000000000d008307?xsec_token=AB73VnYnGNx5y36EtnnZfGmAmS-6Wzv8WMuGpfwfkg6Yc%3D&xsec_source=pc_search"><img src="https://img.shields.io/badge/Xiaohongshu-Official-FF2442?style=flat" alt="Xiaohongshu: Official" /></a>
<a href="https://t.me/zeroclawlabs"><img src="https://img.shields.io/badge/Telegram-%40zeroclawlabs-26A5E4?style=flat&logo=telegram&logoColor=white" alt="Telegram: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclaw"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
</p>
<p align="center">
נבנה על ידי סטודנטים וחברים מקהילות Harvard, MIT ו-Sundai.Club.
</p>
<p align="center">
<p align="center" dir="rtl">
🌐 <strong>שפות:</strong>
<a href="README.md">🇺🇸 English</a> ·
<a href="README.zh-CN.md">🇨🇳 简体中文</a> ·
@ -61,695 +55,167 @@
<a href="README.nb.md">🇳🇴 Norsk</a>
</p>
ZeroClaw הוא עוזר AI אישי שאתה מריץ על המכשירים שלך. הוא עונה לך בערוצים שאתה כבר משתמש בהם (WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, ועוד). יש לו לוח בקרה אינטרנטי לשליטה בזמן אמת ויכול להתחבר להתקנים היקפיים (ESP32, STM32, Arduino, Raspberry Pi). ה-Gateway הוא רק מישור הבקרה — המוצר הוא העוזר.
אם אתה רוצה עוזר אישי למשתמש יחיד שמרגיש מקומי, מהיר ותמיד פעיל, זה הוא.
<p align="center">
<a href="https://zeroclawlabs.ai">אתר</a> ·
<a href="docs/README.md">תיעוד</a> ·
<a href="docs/architecture.md">ארכיטקטורה</a> ·
<a href="#התחלה-מהירה">התחלה</a> ·
<a href="#מיגרציה-מ-openclaw">מיגרציה מ-OpenClaw</a> ·
<a href="docs/ops/troubleshooting.md">פתרון בעיות</a> ·
<a href="https://discord.com/invite/wDshRVqRjx">Discord</a>
</p>
> **הגדרה מועדפת:** הרץ `zeroclaw onboard` בטרמינל שלך. ZeroClaw Onboard מנחה אותך שלב אחר שלב בהגדרת ה-gateway, סביבת העבודה, הערוצים והספק. זהו נתיב ההגדרה המומלץ ועובד על macOS, Linux ו-Windows (דרך WSL2). התקנה חדשה? התחל כאן: [התחלה](#התחלה-מהירה)
### אימות מנוי (OAuth)
- **OpenAI Codex** (מנוי ChatGPT)
- **Gemini** (Google OAuth)
- **Anthropic** (מפתח API או אסימון אימות)
הערה על מודלים: בעוד שספקים/מודלים רבים נתמכים, לחוויה הטובה ביותר השתמש במודל הדור האחרון החזק ביותר הזמין לך. ראה [הכניסה](#התחלה-מהירה).
הגדרות מודלים + CLI: [מדריך ספקים](docs/reference/api/providers-reference.md)
רוטציית פרופיל אימות (OAuth מול מפתחות API) + מעבר בכשל: [מעבר מודלים בכשל](docs/reference/api/providers-reference.md)
## התקנה (מומלץ)
סביבת ריצה: שרשרת כלים יציבה של Rust. בינארי יחיד, ללא תלויות סביבת ריצה.
### Homebrew (macOS/Linuxbrew)
```bash
brew install zeroclaw
```
### התקנה בלחיצה אחת
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./install.sh
```
`zeroclaw onboard` רץ אוטומטית לאחר ההתקנה כדי להגדיר את סביבת העבודה והספק שלך.
## התחלה מהירה (TL;DR)
מדריך מתחילים מלא (אימות, צימוד, ערוצים): [התחלה](docs/setup-guides/one-click-bootstrap.md)
```bash
# Install + onboard
./install.sh --api-key "sk-..." --provider openrouter
# Start the gateway (webhook server + web dashboard)
zeroclaw gateway # default: 127.0.0.1:42617
zeroclaw gateway --port 0 # random port (security hardened)
# Talk to the assistant
zeroclaw agent -m "Hello, ZeroClaw!"
# Interactive mode
zeroclaw agent
# Start full autonomous runtime (gateway + channels + cron + hands)
zeroclaw daemon
# Check status
zeroclaw status
# Run diagnostics
zeroclaw doctor
```
משדרג? הרץ `zeroclaw doctor` לאחר העדכון.
### מקוד מקור (פיתוח)
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
cargo build --release --locked
cargo install --path . --force --locked
zeroclaw onboard
```
> **חלופת פיתוח (ללא התקנה גלובלית):** הוסף `cargo run --release --` לפני פקודות (דוגמה: `cargo run --release -- status`).
## מיגרציה מ-OpenClaw
ZeroClaw יכול לייבא את סביבת העבודה, הזיכרון וההגדרות של OpenClaw שלך:
```bash
# Preview what will be migrated (safe, read-only)
zeroclaw migrate openclaw --dry-run
# Run the migration
zeroclaw migrate openclaw
```
זה מעביר את רשומות הזיכרון, קבצי סביבת העבודה וההגדרות מ-`~/.openclaw/` ל-`~/.zeroclaw/`. ההגדרות מומרות אוטומטית מ-JSON ל-TOML.
## ברירות מחדל אבטחה (גישת DM)
ZeroClaw מתחבר למשטחי הודעות אמיתיים. התייחס ל-DM נכנסים כקלט לא מהימן.
מדריך אבטחה מלא: [SECURITY.md](SECURITY.md)
התנהגות ברירת מחדל בכל הערוצים:
- **צימוד DM** (ברירת מחדל): שולחים לא מוכרים מקבלים קוד צימוד קצר והבוט לא מעבד את ההודעה שלהם.
- אשר עם: `zeroclaw pairing approve <channel> <code>` (ואז השולח נוסף לרשימת היתרים מקומית).
- DM נכנסים ציבוריים דורשים הסכמה מפורשת ב-`config.toml`.
- הרץ `zeroclaw doctor` כדי לחשוף מדיניות DM מסוכנת או שגויה.
**רמות אוטונומיה:**
| רמה | התנהגות |
|------|----------|
| `ReadOnly` | הסוכן יכול לצפות אבל לא לפעול |
| `Supervised` (ברירת מחדל) | הסוכן פועל עם אישור לפעולות בסיכון בינוני/גבוה |
| `Full` | הסוכן פועל באופן אוטונומי בגבולות המדיניות |
**שכבות ארגז חול:** בידוד סביבת עבודה, חסימת מעבר נתיבים, רשימות היתר לפקודות, נתיבים אסורים (`/etc`, `/root`, `~/.ssh`), הגבלת קצב (מקסימום פעולות/שעה, מגבלות עלות/יום).
---
<!-- BEGIN:WHATS_NEW -->
### 🚀 What's New in v0.3.1 (March 2026)
| Area | Highlights |
|---|---|
| ci | add Termux (aarch64-linux-android) release target |
<!-- END:WHATS_NEW -->
### 📢 הודעות
## מה זה ZeroClaw?
השתמש בלוח זה להודעות חשובות (שינויים שוברים, ייעוץ אבטחה, חלונות תחזוקה וחוסמי שחרור).
| תאריך (UTC) | רמה | הודעה | פעולה |
| ---------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 2026-02-19 | _קריטי_ | אנחנו **לא מזוהים** עם `openagen/zeroclaw`, `zeroclaw.org` או `zeroclaw.net`. הדומיינים `zeroclaw.org` ו-`zeroclaw.net` מפנים כרגע ל-fork `openagen/zeroclaw`, ואותו דומיין/מאגר מתחזים לאתר/פרויקט הרשמי שלנו. | אל תסמוך על מידע, בינאריים, גיוס כספים או הודעות ממקורות אלה. השתמש רק ב[מאגר זה](https://github.com/zeroclaw-labs/zeroclaw) ובחשבונות החברתיים המאומתים שלנו. |
| 2026-02-21 | _חשוב_ | האתר הרשמי שלנו כעת פעיל: [zeroclawlabs.ai](https://zeroclawlabs.ai). תודה על הסבלנות בזמן שהכנו את ההשקה. אנחנו עדיין רואים ניסיונות התחזות, לכן **אל** תצטרפו לפעילות השקעה או גיוס כספים הטוענת לשם ZeroClaw אלא אם היא מפורסמת דרך הערוצים הרשמיים שלנו. | השתמש ב[מאגר זה](https://github.com/zeroclaw-labs/zeroclaw) כמקור האמת היחיד. עקוב אחרי [X (@zeroclawlabs)](https://x.com/zeroclawlabs?s=21), [Facebook (Group)](https://www.facebook.com/groups/zeroclawlabs) ו-[Reddit (r/zeroclawlabs)](https://www.reddit.com/r/zeroclawlabs/) לעדכונים רשמיים. |
| 2026-02-19 | _חשוב_ | Anthropic עדכנה את תנאי Authentication and Credential Use ב-2026-02-19. אסימוני Claude Code OAuth (Free, Pro, Max) מיועדים אך ורק ל-Claude Code ול-Claude.ai; שימוש באסימוני OAuth מ-Claude Free/Pro/Max בכל מוצר, כלי או שירות אחר (כולל Agent SDK) אינו מותר ועלול להפר את תנאי השירות לצרכן. | אנא הימנעו זמנית מאינטגרציות Claude Code OAuth כדי למנוע אובדן פוטנציאלי. סעיף מקורי: [Authentication and Credential Use](https://code.claude.com/docs/en/legal-and-compliance#authentication-and-credential-use). |
## יתרונות עיקריים
- **סביבת ריצה קלה כברירת מחדל** — תהליכי CLI וסטטוס שגרתיים רצים במעטפת זיכרון של כמה מגה-בייט על בנייות שחרור.
- **פריסה חסכונית** — מתוכנן ללוחות של $10 ומופעי ענן קטנים, ללא תלויות סביבת ריצה כבדות.
- **התחלה קרה מהירה** — סביבת ריצה Rust בבינארי יחיד שומרת על הפעלת פקודות ודמון כמעט מיידית.
- **ארכיטקטורה ניידת** — בינארי אחד על ARM, x86 ו-RISC-V עם ספקים/ערוצים/כלים להחלפה.
- **Gateway מקומי-תחילה** — מישור בקרה יחיד לסשנים, ערוצים, כלים, cron, SOPs ואירועים.
- **תיבת דואר רב-ערוצית** — WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WebSocket, ועוד.
- **תזמור רב-סוכנים (Hands)** — נחילי סוכנים אוטונומיים הפועלים לפי לוח זמנים ומשתפרים עם הזמן.
- **נהלי הפעלה סטנדרטיים (SOPs)** — אוטומציית תהליכי עבודה מונעת אירועים עם MQTT, webhook, cron וטריגרים של התקנים היקפיים.
- **לוח בקרה אינטרנטי** — ממשק משתמש React 19 + Vite עם צ'אט בזמן אמת, דפדפן זיכרון, עורך הגדרות, מנהל cron ומפקח כלים.
- **התקנים היקפיים** — ESP32, STM32 Nucleo, Arduino, Raspberry Pi GPIO דרך trait `Peripheral`.
- **כלים מדרגה ראשונה** — shell, קריאה/כתיבה/עריכת קבצים, git, שליפת/חיפוש אינטרנט, MCP, Jira, Notion, Google Workspace, ו-70+ נוספים.
- **הוקים של מחזור חיים** — יירוט ושינוי קריאות LLM, הרצות כלים והודעות בכל שלב.
- **פלטפורמת מיומנויות** — מיומנויות מובנות, קהילתיות וסביבת עבודה עם ביקורת אבטחה.
- **תמיכה במנהרות** — Cloudflare, Tailscale, ngrok, OpenVPN ומנהרות מותאמות לגישה מרחוק.
### למה צוותים בוחרים ב-ZeroClaw
- **קל כברירת מחדל:** בינארי Rust קטן, הפעלה מהירה, טביעת רגל זיכרון נמוכה.
- **מאובטח מהתכנון:** צימוד, ארגז חול מחמיר, רשימות היתר מפורשות, תיחום סביבת עבודה.
- **ניתן להחלפה מלאה:** מערכות ליבה הן traits (ספקים, ערוצים, כלים, זיכרון, מנהרות).
- **ללא נעילת ספק:** תמיכה בספקים תואמי OpenAI + נקודות קצה מותאמות הניתנות לחיבור.
## תמונת מצב של ביצועים (ZeroClaw מול OpenClaw, ניתן לשחזור)
מדד מהיר על מכונה מקומית (macOS arm64, פברואר 2026) מנורמל לחומרת edge בתדר 0.8GHz.
| | OpenClaw | NanoBot | PicoClaw | ZeroClaw 🦀 |
| ------------------------- | ------------- | -------------- | --------------- | -------------------- |
| **שפה** | TypeScript | Python | Go | **Rust** |
| **RAM** | > 1GB | > 100MB | < 10MB | **< 5MB** |
| **הפעלה (ליבת 0.8GHz)** | > 500s | > 30s | < 1s | **< 10ms** |
| **גודל בינארי** | ~28MB (dist) | N/A (Scripts) | ~8MB | **~8.8 MB** |
| **עלות** | Mac Mini $599 | Linux SBC ~$50 | Linux Board $10 | **כל חומרה $10** |
> הערות: תוצאות ZeroClaw נמדדו על בנייות שחרור באמצעות `/usr/bin/time -l`. OpenClaw דורש סביבת ריצה Node.js (בדרך כלל ~390MB תקורת זיכרון נוספת), בעוד NanoBot דורש סביבת ריצה Python. PicoClaw ו-ZeroClaw הם בינאריים סטטיים. נתוני ה-RAM למעלה הם זיכרון סביבת ריצה; דרישות קומפילציה בזמן בנייה גבוהות יותר.
<p align="center">
<img src="docs/assets/zeroclaw-comparison.jpeg" alt="ZeroClaw vs OpenClaw Comparison" width="800" />
<p align="center" dir="rtl">
ZeroClaw הוא תשתית עוזר AI קלת משקל, מוטטבילית וניתנת להרחבה שנבנתה ב-Rust. היא מחברת ספקי LLM שונים (Anthropic, OpenAI, Google, Ollama, וכו') דרך ממשק מאוחד ותומכת בערוצים מרובים (Telegram, Matrix, CLI, וכו').
</p>
### מדידה מקומית ניתנת לשחזור
### תכונות עיקריות
<p align="center" dir="rtl">
- **🦀 נכתב ב-Rust**: ביצועים גבוהים, אבטחת זיכרון, ואבסטרקציות ללא עלות
- **🔌 אגנוסטי לספקים**: תמיכה ב-OpenAI, Anthropic, Google Gemini, Ollama, ואחרים
- **📱 ערוצים מרובים**: Telegram, Matrix (עם E2EE), CLI, ואחרים
- **🧠 זיכרון ניתן להחלפה**: Backend של SQLite ו-Markdown
- **🛠️ כלים ניתנים להרחבה**: הוסף כלים מותאמים אישית בקלות
- **🔒 אבטחה תחילה**: פרוקסי הפוך, עיצוב מותחל על פרטיות
</p>
---
## התחלה מהירה
### דרישות מוקדמות
<p align="center" dir="rtl">
- Rust 1.70+
- מפתח API של ספק LLM (Anthropic, OpenAI, וכו')
</p>
### התקנה
```bash
# שכפל את המאגר
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
# בנה
cargo build --release
ls -lh target/release/zeroclaw
/usr/bin/time -l target/release/zeroclaw --help
/usr/bin/time -l target/release/zeroclaw status
# הפעל
cargo run --release
```
## כל מה שבנינו עד כה
### פלטפורמת ליבה
- Gateway HTTP/WS/SSE מישור בקרה עם סשנים, נוכחות, הגדרות, cron, webhooks, לוח בקרה אינטרנטי וצימוד.
- משטח CLI: `gateway`, `agent`, `onboard`, `doctor`, `status`, `service`, `migrate`, `auth`, `cron`, `channel`, `skills`.
- לולאת תזמור סוכן עם שליחת כלים, בניית פרומפט, סיווג הודעות וטעינת זיכרון.
- מודל סשנים עם אכיפת מדיניות אבטחה, רמות אוטונומיה ושער אישור.
- מעטפת ספק עמידה עם מעבר בכשל, ניסיון חוזר וניתוב מודלים על פני 20+ ממשקי LLM.
### ערוצים
ערוצים: WhatsApp (מקורי), Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, DingTalk, Lark, Mattermost, Nextcloud Talk, Nostr, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WATI, Mochat, Linq, Notion, WebSocket, ClawdTalk.
מוגבלי-תכונה: Matrix (`channel-matrix`), Lark (`channel-lark`), Nostr (`channel-nostr`).
### לוח בקרה אינטרנטי
לוח בקרה React 19 + Vite 6 + Tailwind CSS 4 מוגש ישירות מה-Gateway:
- **לוח בקרה** — סקירת מערכת, מצב בריאות, זמן פעילות, מעקב עלויות
- **צ'אט סוכן** — צ'אט אינטראקטיבי עם הסוכן
- **זיכרון** — דפדוף וניהול רשומות זיכרון
- **הגדרות** — צפייה ועריכת הגדרות
- **Cron** — ניהול משימות מתוזמנות
- **כלים** — דפדוף בכלים זמינים
- **יומנים** — צפייה ביומני פעילות הסוכן
- **עלות** — שימוש בטוקנים ומעקב עלויות
- **דוקטור** — אבחון בריאות המערכת
- **אינטגרציות** — מצב אינטגרציות והגדרה
- **צימוד** — ניהול צימוד מכשירים
### יעדי קושחה
| יעד | פלטפורמה | מטרה |
|--------|----------|---------|
| ESP32 | Espressif ESP32 | סוכן היקפי אלחוטי |
| ESP32-UI | ESP32 + Display | סוכן עם ממשק חזותי |
| STM32 Nucleo | STM32 (ARM Cortex-M) | התקן היקפי תעשייתי |
| Arduino | Arduino | גשר חיישן/מפעיל בסיסי |
| Uno Q Bridge | Arduino Uno | גשר סריאלי לסוכן |
### כלים + אוטומציה
- **ליבה:** shell, קריאה/כתיבה/עריכת קבצים, פעולות git, חיפוש glob, חיפוש תוכן
- **אינטרנט:** שליטה בדפדפן, web fetch, web search, צילום מסך, מידע תמונה, קריאת PDF
- **אינטגרציות:** Jira, Notion, Google Workspace, Microsoft 365, LinkedIn, Composio, Pushover
- **MCP:** מעטפת כלי Model Context Protocol + סטים של כלים מושהים
- **תזמון:** cron add/remove/update/run, כלי תזמון
- **זיכרון:** recall, store, forget, knowledge, project intel
- **מתקדם:** delegate (סוכן-לסוכן), swarm, החלפת/ניתוב מודל, פעולות אבטחה, פעולות ענן
- **חומרה:** מידע לוח, מפת זיכרון, קריאת זיכרון (מוגבל-תכונה)
### סביבת ריצה + אבטחה
- **רמות אוטונומיה:** ReadOnly, Supervised (ברירת מחדל), Full.
- **ארגז חול:** בידוד סביבת עבודה, חסימת מעבר נתיבים, רשימות היתר לפקודות, נתיבים אסורים, Landlock (Linux), Bubblewrap.
- **הגבלת קצב:** מקסימום פעולות בשעה, מקסימום עלות ביום (ניתן להגדרה).
- **שער אישור:** אישור אינטראקטיבי לפעולות בסיכון בינוני/גבוה.
- **עצירת חירום:** יכולת כיבוי חירום.
- **129+ מבחני אבטחה** ב-CI אוטומטי.
### תפעול + אריזה
- לוח בקרה אינטרנטי מוגש ישירות מה-Gateway.
- תמיכה במנהרות: Cloudflare, Tailscale, ngrok, OpenVPN, פקודה מותאמת.
- מתאם סביבת ריצה Docker להרצה בקונטיינרים.
- CI/CD: בטא (אוטומטי בדחיפה) → יציב (שליחה ידנית) → Docker, crates.io, Scoop, AUR, Homebrew, ציוץ.
- בינאריים מוכנים מראש ל-Linux (x86_64, aarch64, armv7), macOS (x86_64, aarch64), Windows (x86_64).
## הגדרות
מינימלי `~/.zeroclaw/config.toml`:
```toml
default_provider = "anthropic"
api_key = "sk-ant-..."
```
מדריך הגדרות מלא: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md).
### הגדרת ערוצים
**Telegram:**
```toml
[channels.telegram]
bot_token = "123456:ABC-DEF..."
```
**Discord:**
```toml
[channels.discord]
token = "your-bot-token"
```
**Slack:**
```toml
[channels.slack]
bot_token = "xoxb-..."
app_token = "xapp-..."
```
**WhatsApp:**
```toml
[channels.whatsapp]
enabled = true
```
**Matrix:**
```toml
[channels.matrix]
homeserver_url = "https://matrix.org"
username = "@bot:matrix.org"
password = "..."
```
**Signal:**
```toml
[channels.signal]
phone_number = "+1234567890"
```
### הגדרת מנהרות
```toml
[tunnel]
kind = "cloudflare" # or "tailscale", "ngrok", "openvpn", "custom", "none"
```
פרטים: [מדריך ערוצים](docs/reference/api/channels-reference.md) · [מדריך הגדרות](docs/reference/api/config-reference.md)
### תמיכה בסביבת ריצה (נוכחי)
- **`native`** (ברירת מחדל) — הרצת תהליך ישירה, הנתיב המהיר ביותר, אידיאלי לסביבות מהימנות.
- **`docker`** — בידוד קונטיינר מלא, מדיניות אבטחה נאכפת, דורש Docker.
הגדר `runtime.kind = "docker"` לארגז חול מחמיר או בידוד רשת.
## אימות מנוי (OpenAI Codex / Claude Code / Gemini)
ZeroClaw תומך בפרופילי אימות מקוריים למנוי (רב-חשבוני, מוצפן במנוחה).
- קובץ אחסון: `~/.zeroclaw/auth-profiles.json`
- מפתח הצפנה: `~/.zeroclaw/.secret_key`
- פורמט מזהה פרופיל: `<provider>:<profile_name>` (דוגמה: `openai-codex:work`)
### עם Docker
```bash
# OpenAI Codex OAuth (ChatGPT subscription)
zeroclaw auth login --provider openai-codex --device-code
# Gemini OAuth
zeroclaw auth login --provider gemini --profile default
# Anthropic setup-token
zeroclaw auth paste-token --provider anthropic --profile default --auth-kind authorization
# Check / refresh / switch profile
zeroclaw auth status
zeroclaw auth refresh --provider openai-codex --profile default
zeroclaw auth use --provider openai-codex --profile work
# Run the agent with subscription auth
zeroclaw agent --provider openai-codex -m "hello"
zeroclaw agent --provider anthropic -m "hello"
docker run -d \
--name zeroclaw \
-e ANTHROPIC_API_KEY=your_key \
-v zeroclaw-data:/app/data \
zeroclaw/zeroclaw:latest
```
## סביבת עבודה של הסוכן + מיומנויות
---
שורש סביבת עבודה: `~/.zeroclaw/workspace/` (ניתן להגדרה דרך ההגדרות).
## קונפיגורציה
קבצי פרומפט מוזרקים:
- `IDENTITY.md` — אישיות ותפקיד הסוכן
- `USER.md` — הקשר והעדפות המשתמש
- `MEMORY.md` — עובדות ולקחים לטווח ארוך
- `AGENTS.md` — מוסכמות סשן וכללי אתחול
- `SOUL.md` — זהות ליבה ועקרונות הפעלה
<p align="center" dir="rtl">
ZeroClaw משתמש בקובץ קונפיגורציה YAML. כברירת מחדל, הוא מחפש `config.yaml`.
</p>
מיומנויות: `~/.zeroclaw/workspace/skills/<skill>/SKILL.md` או `SKILL.toml`.
```yaml
# ספק ברירת מחדל
provider: anthropic
```bash
# List installed skills
zeroclaw skills list
# קונפיגורציית ספקים
providers:
anthropic:
api_key: ${ANTHROPIC_API_KEY}
model: claude-3-5-sonnet-20241022
openai:
api_key: ${OPENAI_API_KEY}
model: gpt-4o
# Install from git
zeroclaw skills install https://github.com/user/my-skill.git
# קונפיגורציית זיכרון
memory:
backend: sqlite
path: data/memory.db
# Security audit before install
zeroclaw skills audit https://github.com/user/my-skill.git
# Remove a skill
zeroclaw skills remove my-skill
# קונפיגורציית ערוצים
channels:
telegram:
token: ${TELEGRAM_BOT_TOKEN}
```
## פקודות CLI
```bash
# Workspace management
zeroclaw onboard # Guided setup wizard
zeroclaw status # Show daemon/agent status
zeroclaw doctor # Run system diagnostics
# Gateway + daemon
zeroclaw gateway # Start gateway server (127.0.0.1:42617)
zeroclaw daemon # Start full autonomous runtime
# Agent
zeroclaw agent # Interactive chat mode
zeroclaw agent -m "message" # Single message mode
# Service management
zeroclaw service install # Install as OS service (launchd/systemd)
zeroclaw service start|stop|restart|status
# Channels
zeroclaw channel list # List configured channels
zeroclaw channel doctor # Check channel health
zeroclaw channel bind-telegram 123456789
# Cron + scheduling
zeroclaw cron list # List scheduled jobs
zeroclaw cron add "*/5 * * * *" --prompt "Check system health"
zeroclaw cron remove <id>
# Memory
zeroclaw memory list # List memory entries
zeroclaw memory get <key> # Retrieve a memory
zeroclaw memory stats # Memory statistics
# Auth profiles
zeroclaw auth login --provider <name>
zeroclaw auth status
zeroclaw auth use --provider <name> --profile <profile>
# Hardware peripherals
zeroclaw hardware discover # Scan for connected devices
zeroclaw peripheral list # List connected peripherals
zeroclaw peripheral flash # Flash firmware to device
# Migration
zeroclaw migrate openclaw --dry-run
zeroclaw migrate openclaw
# Shell completions
source <(zeroclaw completions bash)
zeroclaw completions zsh > ~/.zfunc/_zeroclaw
```
מדריך פקודות מלא: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
<!-- markdownlint-disable MD001 MD024 -->
## דרישות מקדימות
<details>
<summary><strong>Windows</strong></summary>
#### נדרש
1. **Visual Studio Build Tools** (מספק את מקשר MSVC ו-Windows SDK):
```powershell
winget install Microsoft.VisualStudio.2022.BuildTools
```
במהלך ההתקנה (או דרך Visual Studio Installer), בחר את עומס העבודה **"Desktop development with C++"**.
2. **שרשרת כלים Rust:**
```powershell
winget install Rustlang.Rustup
```
לאחר ההתקנה, פתח טרמינל חדש והרץ `rustup default stable` כדי לוודא ששרשרת הכלים היציבה פעילה.
3. **אמת** ששניהם עובדים:
```powershell
rustc --version
cargo --version
```
#### אופציונלי
- **Docker Desktop** — נדרש רק אם משתמשים ב[סביבת ריצה Docker בארגז חול](#תמיכה-בסביבת-ריצה-נוכחי) (`runtime.kind = "docker"`). התקן דרך `winget install Docker.DockerDesktop`.
</details>
<details>
<summary><strong>Linux / macOS</strong></summary>
#### נדרש
1. **כלי בנייה:**
- **Linux (Debian/Ubuntu):** `sudo apt install build-essential pkg-config`
- **Linux (Fedora/RHEL):** `sudo dnf group install development-tools && sudo dnf install pkg-config`
- **macOS:** התקן Xcode Command Line Tools: `xcode-select --install`
2. **שרשרת כלים Rust:**
```bash
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
```
ראה [rustup.rs](https://rustup.rs) לפרטים.
3. **אמת** ששניהם עובדים:
```bash
rustc --version
cargo --version
```
#### מתקין בשורה אחת
או דלג על השלבים למעלה והתקן הכל (תלויות מערכת, Rust, ZeroClaw) בפקודה אחת:
```bash
curl -LsSf https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/install.sh | bash
```
#### דרישות משאבי קומפילציה
בנייה מקוד מקור דורשת יותר משאבים מהרצת הבינארי המתקבל:
| משאב | מינימום | מומלץ |
| -------------- | ------- | ----------- |
| **RAM + swap** | 2 GB | 4 GB+ |
| **דיסק פנוי** | 6 GB | 10 GB+ |
אם המארח שלך מתחת למינימום, השתמש בבינאריים מוכנים מראש:
```bash
./install.sh --prefer-prebuilt
```
כדי לדרוש התקנת בינארי בלבד ללא חלופת מקור:
```bash
./install.sh --prebuilt-only
```
#### אופציונלי
- **Docker** — נדרש רק אם משתמשים ב[סביבת ריצה Docker בארגז חול](#תמיכה-בסביבת-ריצה-נוכחי) (`runtime.kind = "docker"`). התקן דרך מנהל החבילות שלך או [docker.com](https://docs.docker.com/engine/install/).
> **הערה:** ברירת המחדל `cargo build --release` משתמשת ב-`codegen-units=1` כדי להפחית לחץ קומפילציה שיא. לבנייות מהירות יותר על מכונות חזקות, השתמש ב-`cargo build --profile release-fast`.
</details>
<!-- markdownlint-enable MD001 MD024 -->
### בינאריים מוכנים מראש
נכסי שחרור מפורסמים עבור:
- Linux: `x86_64`, `aarch64`, `armv7`
- macOS: `x86_64`, `aarch64`
- Windows: `x86_64`
הורד את הנכסים האחרונים מ:
<https://github.com/zeroclaw-labs/zeroclaw/releases/latest>
---
## תיעוד
השתמש באלה כשעברת את תהליך ההכניסה ורוצה את המדריך המעמיק יותר.
<p align="center" dir="rtl">
לתיעוד מפורט, ראה:
</p>
- התחל עם [אינדקס התיעוד](docs/README.md) לניווט ו"מה נמצא איפה."
- קרא את [סקירת הארכיטקטורה](docs/architecture.md) למודל המערכת המלא.
- השתמש ב[מדריך ההגדרות](docs/reference/api/config-reference.md) כשאתה צריך כל מפתח ודוגמה.
- הפעל את ה-Gateway לפי הספר עם [מדריך התפעול](docs/ops/operations-runbook.md).
- עקוב אחרי [ZeroClaw Onboard](#התחלה-מהירה) להגדרה מונחית.
- אבחן כשלים נפוצים עם [מדריך פתרון בעיות](docs/ops/troubleshooting.md).
- סקור את [הנחיות האבטחה](docs/security/README.md) לפני חשיפת משהו.
- [מרכז התיעוד](docs/README.md)
- [הפניה לפקודות](docs/commands-reference.md)
- [הפניה לספקים](docs/providers-reference.md)
- [הפניה לערוצים](docs/channels-reference.md)
- [הפניה לקונפיגורציה](docs/config-reference.md)
### תיעוד מדריכים
---
- מרכז תיעוד: [docs/README.md](docs/README.md)
- תוכן עניינים מאוחד: [docs/SUMMARY.md](docs/SUMMARY.md)
- מדריך פקודות: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
- מדריך הגדרות: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md)
- מדריך ספקים: [docs/reference/api/providers-reference.md](docs/reference/api/providers-reference.md)
- מדריך ערוצים: [docs/reference/api/channels-reference.md](docs/reference/api/channels-reference.md)
- מדריך תפעול: [docs/ops/operations-runbook.md](docs/ops/operations-runbook.md)
- פתרון בעיות: [docs/ops/troubleshooting.md](docs/ops/troubleshooting.md)
## תרומות
### תיעוד שיתוף פעולה
- מדריך תרומה: [CONTRIBUTING.md](CONTRIBUTING.md)
- מדיניות תהליך PR: [docs/contributing/pr-workflow.md](docs/contributing/pr-workflow.md)
- מדריך תהליך CI: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- מדריך סוקר: [docs/contributing/reviewer-playbook.md](docs/contributing/reviewer-playbook.md)
- מדיניות חשיפת אבטחה: [SECURITY.md](SECURITY.md)
- תבנית תיעוד: [docs/contributing/doc-template.md](docs/contributing/doc-template.md)
### פריסה + תפעול
- מדריך פריסת רשת: [docs/ops/network-deployment.md](docs/ops/network-deployment.md)
- מדריך סוכן פרוקסי: [docs/ops/proxy-agent-playbook.md](docs/ops/proxy-agent-playbook.md)
- מדריכי חומרה: [docs/hardware/README.md](docs/hardware/README.md)
## Smooth Crab 🦀
ZeroClaw נבנה עבור ה-smooth crab 🦀, עוזר AI מהיר ויעיל. נבנה על ידי Argenis De La Rosa והקהילה.
- [zeroclawlabs.ai](https://zeroclawlabs.ai)
- [@zeroclawlabs](https://x.com/zeroclawlabs)
## תמוך ב-ZeroClaw
אם ZeroClaw עוזר לעבודה שלך ואתה רוצה לתמוך בפיתוח המתמשך, אתה יכול לתרום כאן:
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=for-the-badge&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
### 🙏 תודה מיוחדת
תודה מכל הלב לקהילות ולמוסדות שמעוררים השראה ומניעים את עבודת הקוד הפתוח הזו:
- **Harvard University** — על טיפוח סקרנות אינטלקטואלית ודחיפת גבולות האפשרי.
- **MIT** — על קידום ידע פתוח, קוד פתוח והאמונה שטכנולוגיה צריכה להיות נגישה לכולם.
- **Sundai Club** — על הקהילה, האנרגיה והמאמץ הבלתי פוסק לבנות דברים שחשובים.
- **העולם ומעבר** 🌍✨ — לכל תורם, חולם ובונה שם שהופך קוד פתוח לכוח לטובה. זה בשבילכם.
אנחנו בונים בגלוי כי הרעיונות הטובים ביותר מגיעים מכל מקום. אם אתה קורא את זה, אתה חלק מזה. ברוך הבא. 🦀❤️
## תרומה
חדש ב-ZeroClaw? חפש בעיות עם התווית [`good first issue`](https://github.com/zeroclaw-labs/zeroclaw/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) — ראה את [מדריך התרומה](CONTRIBUTING.md#first-time-contributors) שלנו כדי להתחיל. PR של AI/vibe-coded מתקבלים בברכה! 🤖
ראה [CONTRIBUTING.md](CONTRIBUTING.md) ו-[CLA.md](docs/contributing/cla.md). ממש trait, שלח PR:
- מדריך תהליך CI: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- `Provider` חדש → `src/providers/`
- `Channel` חדש → `src/channels/`
- `Observer` חדש → `src/observability/`
- `Tool` חדש → `src/tools/`
- `Memory` חדש → `src/memory/`
- `Tunnel` חדש → `src/tunnel/`
- `Peripheral` חדש → `src/peripherals/`
- `Skill` חדש → `~/.zeroclaw/workspace/skills/<name>/`
<!-- BEGIN:RECENT_CONTRIBUTORS -->
<!-- END:RECENT_CONTRIBUTORS -->
## ⚠️ מאגר רשמי ואזהרת התחזות
**זהו מאגר ZeroClaw הרשמי היחיד:**
> https://github.com/zeroclaw-labs/zeroclaw
כל מאגר, ארגון, דומיין או חבילה אחרים הטוענים להיות "ZeroClaw" או מרמזים על שיוך ל-ZeroClaw Labs הם **לא מורשים ולא מזוהים עם פרויקט זה**. פורקים לא מורשים ידועים ירשמו ב-[TRADEMARK.md](docs/maintainers/trademark.md).
אם אתה נתקל בהתחזות או שימוש לרעה בסימן מסחרי, אנא [פתח issue](https://github.com/zeroclaw-labs/zeroclaw/issues).
<p align="center" dir="rtl">
תרומות מוזמנות! אנא קרא את [מדריך התרומות](CONTRIBUTING.md).
</p>
---
## רישיון
ZeroClaw מורשה ברישיון כפול לפתיחות מקסימלית והגנה על תורמים:
<p align="center" dir="rtl">
פרויקט זה מורשה ברישיון כפול:
</p>
| רישיון | מקרה שימוש |
|---|---|
| [MIT](LICENSE-MIT) | קוד פתוח, מחקר, אקדמי, שימוש אישי |
| [Apache 2.0](LICENSE-APACHE) | הגנת פטנטים, מוסדי, פריסה מסחרית |
- MIT License
- Apache License, גרסה 2.0
אתה יכול לבחור כל רישיון. **תורמים מעניקים זכויות באופן אוטומטי תחת שניהם** — ראה [CLA.md](docs/contributing/cla.md) להסכם התורם המלא.
### סימן מסחרי
השם והלוגו של **ZeroClaw** הם סימנים מסחריים של ZeroClaw Labs. רישיון זה אינו מעניק הרשאה להשתמש בהם כדי לרמוז על תמיכה או שיוך. ראה [TRADEMARK.md](docs/maintainers/trademark.md) לשימושים מותרים ואסורים.
### הגנות על תורמים
- אתה **שומר על זכויות יוצרים** על תרומותיך
- **הענקת פטנט** (Apache 2.0) מגנה עליך מתביעות פטנט של תורמים אחרים
- תרומותיך **מיוחסות באופן קבוע** בהיסטוריית הקומיטים וב-[NOTICE](NOTICE)
- לא מועברות זכויות סימן מסחרי על ידי תרומה
<p align="center" dir="rtl">
ראה [LICENSE-APACHE](LICENSE-APACHE) ו-[LICENSE-MIT](LICENSE-MIT) לפרטים.
</p>
---
**ZeroClaw** — אפס תקורה. אפס פשרות. פרוס בכל מקום. החלף הכל. 🦀
## קהילה
## תורמים
- [Telegram](https://t.me/zeroclawlabs)
- [Facebook Group](https://www.facebook.com/groups/zeroclaw)
- [WeChat Group](https://zeroclawlabs.cn/group.jpg)
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors">
<img src="https://contrib.rocks/image?repo=zeroclaw-labs/zeroclaw" alt="ZeroClaw contributors" />
</a>
---
רשימה זו נוצרת מגרף התורמים של GitHub ומתעדכנת אוטומטית.
## נותני חסות
## היסטוריית כוכבים
<p align="center">
<a href="https://www.star-history.com/#zeroclaw-labs/zeroclaw&type=date&legend=top-left">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&theme=dark&legend=top-left" />
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
</picture>
</a>
<p align="center" dir="rtl">
אם ZeroClaw שימושי עבורך, אנא שקול לקנות לנו קפה:
</p>
[![Buy Me a Coffee](https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee)](https://buymeacoffee.com/argenistherose)
<!-- BEGIN:RECENT_CONTRIBUTORS -->
### 🌟 Recent Contributors (v0.3.1)
3 contributors shipped features, fixes, and improvements in this release cycle:
- **Argenis**
- **argenis de la rosa**
- **Claude Opus 4.6**
Thank you to everyone who opened issues, reviewed PRs, translated docs, and helped test. Every contribution matters. 🦀
<!-- END:RECENT_CONTRIBUTORS -->

View File

@ -1,29 +1,23 @@
<p align="center">
<img src="https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/docs/assets/zeroclaw-banner.png" alt="ZeroClaw" width="600" />
<img src="zeroclaw.png" alt="ZeroClaw" width="200" />
</p>
<h1 align="center">🦀 ZeroClaw — व्यक्तिगत AI सहायक</h1>
<h1 align="center">ZeroClaw 🦀</h1>
<p align="center">
<strong>शून्य ओवरहेड। शून्य समझौता। 100% Rust। 100% अज्ञेयवादी।</strong><br>
⚡️ <strong>$10 के हार्डवेयर पर <5MB RAM के चलत है: यह OpenClaw से 99% कम मेम और Mac mini से 98% सस्त है!</strong>
<strong>शून्य ओवरहेड। शून्य समझौता। 100% रस्ट। 100% अज्ञेयवादी।</strong><br>
⚡️ <strong>$10 हार्डवेयर पर <5MB RAM के चलत है: यह OpenClaw से 99% कम मेम और Mac mini से 98% सस्त है!</strong>
</p>
<p align="center">
<a href="LICENSE-APACHE"><img src="https://img.shields.io/badge/license-MIT%20OR%20Apache%202.0-blue.svg" alt="License: MIT OR Apache-2.0" /></a>
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors"><img src="https://img.shields.io/github/contributors/zeroclaw-labs/zeroclaw?color=green" alt="Contributors" /></a>
<a href="NOTICE"><img src="https://img.shields.io/badge/contributors-27+-green.svg" alt="Contributors" /></a>
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
<a href="https://x.com/zeroclawlabs?s=21"><img src="https://img.shields.io/badge/X-%40zeroclawlabs-000000?style=flat&logo=x&logoColor=white" alt="X: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclawlabs"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
<a href="https://discord.com/invite/wDshRVqRjx"><img src="https://img.shields.io/badge/Discord-Join-5865F2?style=flat&logo=discord&logoColor=white" alt="Discord" /></a>
<a href="https://www.instagram.com/therealzeroclaw"><img src="https://img.shields.io/badge/Instagram-%40therealzeroclaw-E4405F?style=flat&logo=instagram&logoColor=white" alt="Instagram: @therealzeroclaw" /></a>
<a href="https://www.tiktok.com/@zeroclawlabs"><img src="https://img.shields.io/badge/TikTok-%40zeroclawlabs-000000?style=flat&logo=tiktok&logoColor=white" alt="TikTok: @zeroclawlabs" /></a>
<a href="https://www.rednote.com/user/profile/69b735e6000000002603927e"><img src="https://img.shields.io/badge/RedNote-Official-FF2442?style=flat" alt="RedNote" /></a>
<a href="https://www.reddit.com/r/zeroclawlabs/"><img src="https://img.shields.io/badge/Reddit-r%2Fzeroclawlabs-FF4500?style=flat&logo=reddit&logoColor=white" alt="Reddit: r/zeroclawlabs" /></a>
</p>
<p align="center">
Harvard, MIT, और Sundai.Club समुदायों के छात्रों और सदस्यों द्वारा निर्मित।
<a href="https://zeroclawlabs.cn/group.jpg"><img src="https://img.shields.io/badge/WeChat-Group-B7D7A8?logo=wechat&logoColor=white" alt="WeChat Group" /></a>
<a href="https://www.xiaohongshu.com/user/profile/67cbfc43000000000d008307?xsec_token=AB73VnYnGNx5y36EtnnZfGmAmS-6Wzv8WMuGpfwfkg6Yc%3D&xsec_source=pc_search"><img src="https://img.shields.io/badge/Xiaohongshu-Official-FF2442?style=flat" alt="Xiaohongshu: Official" /></a>
<a href="https://t.me/zeroclawlabs"><img src="https://img.shields.io/badge/Telegram-%40zeroclawlabs-26A5E4?style=flat&logo=telegram&logoColor=white" alt="Telegram: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclaw"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
</p>
<p align="center">
@ -61,695 +55,149 @@ Harvard, MIT, और Sundai.Club समुदायों के छात्र
<a href="README.nb.md">🇳🇴 Norsk</a>
</p>
ZeroClaw एक व्यक्तिगत AI सहायक है जिसे आप अपने उपकरणों पर चलाते हैं। यह आपको उन चैनलों पर जवाब देता है जो आप पहले से उपयोग करते हैं (WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, और अन्य)। इसमें रियल-टाइम नियंत्रण के लिए एक वेब डैशबोर्ड है और यह हार्डवेयर पेरीफेरल (ESP32, STM32, Arduino, Raspberry Pi) से जुड़ सकता है। Gateway केवल कंट्रोल प्लेन है — उत्पाद सहायक है।
यदि आप एक व्यक्तिगत, एकल-उपयोगकर्ता सहायक चाहते हैं जो स्थानीय, तेज़ और हमेशा चालू महसूस हो, तो यह है।
<p align="center">
<a href="https://zeroclawlabs.ai">वेबसाइट</a> ·
<a href="docs/README.md">दस्तावेज़</a> ·
<a href="docs/architecture.md">आर्किटेक्चर</a> ·
<a href="#त्वरित-शुरुआत">शुरू करें</a> ·
<a href="#openclaw-से-माइग्रेशन">OpenClaw से माइग्रेशन</a> ·
<a href="docs/ops/troubleshooting.md">समस्या निवारण</a> ·
<a href="https://discord.com/invite/wDshRVqRjx">Discord</a>
</p>
> **पसंदीदा सेटअप:** अपने टर्मिनल में `zeroclaw onboard` चलाएँ। ZeroClaw Onboard आपको gateway, workspace, channels, और provider सेट करने में कदम-दर-कदम मार्गदर्शन करता है। यह अनुशंसित सेटअप पथ है और macOS, Linux, और Windows (WSL2 के माध्यम से) पर काम करता है। नया इंस्टॉल? यहाँ से शुरू करें: [शुरू करें](#त्वरित-शुरुआत)
### सब्सक्रिप्शन ऑथ (OAuth)
- **OpenAI Codex** (ChatGPT सब्सक्रिप्शन)
- **Gemini** (Google OAuth)
- **Anthropic** (API key या auth token)
मॉडल नोट: जबकि कई प्रदाताओं/मॉडलों का समर्थन किया जाता है, सर्वोत्तम अनुभव के लिए अपने पास उपलब्ध सबसे मजबूत नवीनतम पीढ़ी के मॉडल का उपयोग करें। देखें [ऑनबोर्डिंग](#त्वरित-शुरुआत)।
मॉडल कॉन्फ़िग + CLI: [प्रदाता संदर्भ](docs/reference/api/providers-reference.md)
ऑथ प्रोफ़ाइल रोटेशन (OAuth बनाम API keys) + फ़ेलओवर: [मॉडल फ़ेलओवर](docs/reference/api/providers-reference.md)
## इंस्टॉल (अनुशंसित)
रनटाइम: Rust स्थिर टूलचेन। एकल बाइनरी, कोई रनटाइम निर्भरता नहीं।
### Homebrew (macOS/Linuxbrew)
```bash
brew install zeroclaw
```
### एक-क्लिक बूटस्ट्रैप
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./install.sh
```
`zeroclaw onboard` इंस्टॉल के बाद स्वचालित रूप से चलता है ताकि आपका workspace और provider कॉन्फ़िगर हो सके।
## त्वरित शुरुआत (TL;DR)
पूर्ण शुरुआती गाइड (ऑथ, पेयरिंग, चैनल): [शुरू करें](docs/setup-guides/one-click-bootstrap.md)
```bash
# Install + onboard
./install.sh --api-key "sk-..." --provider openrouter
# Start the gateway (webhook server + web dashboard)
zeroclaw gateway # default: 127.0.0.1:42617
zeroclaw gateway --port 0 # random port (security hardened)
# Talk to the assistant
zeroclaw agent -m "Hello, ZeroClaw!"
# Interactive mode
zeroclaw agent
# Start full autonomous runtime (gateway + channels + cron + hands)
zeroclaw daemon
# Check status
zeroclaw status
# Run diagnostics
zeroclaw doctor
```
अपग्रेड कर रहे हैं? अपडेट के बाद `zeroclaw doctor` चलाएँ।
### स्रोत से (विकास)
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
cargo build --release --locked
cargo install --path . --force --locked
zeroclaw onboard
```
> **विकास फ़ॉलबैक (कोई ग्लोबल इंस्टॉल नहीं):** कमांड के आगे `cargo run --release --` लगाएँ (उदाहरण: `cargo run --release -- status`)।
## OpenClaw से माइग्रेशन
ZeroClaw आपके OpenClaw workspace, मेमोरी, और कॉन्फ़िगरेशन आयात कर सकता है:
```bash
# Preview what will be migrated (safe, read-only)
zeroclaw migrate openclaw --dry-run
# Run the migration
zeroclaw migrate openclaw
```
यह आपकी मेमोरी प्रविष्टियों, workspace फ़ाइलों, और कॉन्फ़िगरेशन को `~/.openclaw/` से `~/.zeroclaw/` में माइग्रेट करता है। कॉन्फ़िग स्वचालित रूप से JSON से TOML में परिवर्तित हो जाता है।
## सुरक्षा डिफ़ॉल्ट (DM एक्सेस)
ZeroClaw वास्तविक मैसेजिंग सतहों से जुड़ता है। इनबाउंड DMs को अविश्वसनीय इनपुट के रूप में मानें।
पूर्ण सुरक्षा गाइड: [SECURITY.md](SECURITY.md)
सभी चैनलों पर डिफ़ॉल्ट व्यवहार:
- **DM पेयरिंग** (डिफ़ॉल्ट): अज्ञात प्रेषकों को एक छोटा पेयरिंग कोड मिलता है और बॉट उनका संदेश प्रोसेस नहीं करता।
- इससे स्वीकृति दें: `zeroclaw pairing approve <channel> <code>` (फिर प्रेषक स्थानीय अनुमति सूची में जोड़ा जाता है)।
- सार्वजनिक इनबाउंड DMs के लिए `config.toml` में स्पष्ट ऑप्ट-इन आवश्यक है।
- जोखिमपूर्ण या गलत कॉन्फ़िगर DM नीतियों को सामने लाने के लिए `zeroclaw doctor` चलाएँ।
**स्वायत्तता स्तर:**
| स्तर | व्यवहार |
|-------|----------|
| `ReadOnly` | एजेंट देख सकता है लेकिन कार्य नहीं कर सकता |
| `Supervised` (डिफ़ॉल्ट) | एजेंट मध्यम/उच्च जोखिम संचालन के लिए स्वीकृति के साथ कार्य करता है |
| `Full` | एजेंट नीति सीमाओं के भीतर स्वायत्त रूप से कार्य करता है |
**सैंडबॉक्सिंग परतें:** workspace आइसोलेशन, पथ ट्रैवर्सल ब्लॉकिंग, कमांड अनुमति सूची, प्रतिबंधित पथ (`/etc`, `/root`, `~/.ssh`), दर सीमित करना (अधिकतम कार्य/घंटा, लागत/दिन सीमा)।
---
<!-- BEGIN:WHATS_NEW -->
### 🚀 What's New in v0.3.1 (March 2026)
| Area | Highlights |
|---|---|
| ci | add Termux (aarch64-linux-android) release target |
<!-- END:WHATS_NEW -->
### 📢 घोषणाएँ
## ZeroClaw क्या है?
महत्वपूर्ण सूचनाओं (ब्रेकिंग बदलाव, सुरक्षा सलाह, रखरखाव विंडो, और रिलीज़ ब्लॉकर) के लिए इस बोर्ड का उपयोग करें।
ZeroClaw एक हल्का, म्यूटेबल और एक्स्टेंसिबल AI असिस्टेंट इन्फ्रास्ट्रक्चर है जो रस्ट में बनाया गया है। यह विभिन्न LLM प्रदाताओं (Anthropic, OpenAI, Google, Ollama, आदि) को एक एकीकृत इंटरफेस के माध्यम से कनेक्ट करता है और कई चैनलों (Telegram, Matrix, CLI, आदि) का समर्थन करता है।
| तिथि (UTC) | स्तर | सूचना | कार्रवाई |
| ---------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 2026-02-19 | _गंभीर_ | हम `openagen/zeroclaw`, `zeroclaw.org` या `zeroclaw.net` से **संबद्ध नहीं** हैं। `zeroclaw.org` और `zeroclaw.net` डोमेन वर्तमान में `openagen/zeroclaw` फ़ोर्क की ओर इशारा करते हैं, और वह डोमेन/रिपॉजिटरी हमारी आधिकारिक वेबसाइट/प्रोजेक्ट का रूप धारण कर रहे हैं। | उन स्रोतों से जानकारी, बाइनरी, फंडरेजिंग, या घोषणाओं पर भरोसा न करें। केवल [यह रिपॉजिटरी](https://github.com/zeroclaw-labs/zeroclaw) और हमारे सत्यापित सोशल अकाउंट्स का उपयोग करें। |
| 2026-02-21 | _महत्वपूर्ण_ | हमारी आधिकारिक वेबसाइट अब लाइव है: [zeroclawlabs.ai](https://zeroclawlabs.ai)। लॉन्च की तैयारी करते समय आपके धैर्य के लिए धन्यवाद। हम अभी भी प्रतिरूपण प्रयास देख रहे हैं, इसलिए किसी भी निवेश या फंडरेजिंग गतिविधि में **शामिल न हों** जो ZeroClaw नाम का दावा करती है जब तक कि यह हमारे आधिकारिक चैनलों के माध्यम से प्रकाशित न हो। | [यह रिपॉजिटरी](https://github.com/zeroclaw-labs/zeroclaw) को सत्य के एकमात्र स्रोत के रूप में उपयोग करें। आधिकारिक अपडेट के लिए [X (@zeroclawlabs)](https://x.com/zeroclawlabs?s=21), [Facebook (Group)](https://www.facebook.com/groups/zeroclawlabs), और [Reddit (r/zeroclawlabs)](https://www.reddit.com/r/zeroclawlabs/) को फ़ॉलो करें। |
| 2026-02-19 | _महत्वपूर्ण_ | Anthropic ने 2026-02-19 को Authentication and Credential Use शर्तें अपडेट कीं। Claude Code OAuth टोकन (Free, Pro, Max) विशेष रूप से Claude Code और Claude.ai के लिए हैं; Claude Free/Pro/Max से OAuth टोकन का किसी अन्य उत्पाद, उपकरण, या सेवा (Agent SDK सहित) में उपयोग अनुमत नहीं है और उपभोक्ता सेवा की शर्तों का उल्लंघन हो सकता है। | संभावित नुकसान को रोकने के लिए कृपया Claude Code OAuth एकीकरण से अस्थायी रूप से बचें। मूल खंड: [Authentication and Credential Use](https://code.claude.com/docs/en/legal-and-compliance#authentication-and-credential-use)। |
### मुख्य विशेषताएं
## मुख्य विशेषताएँ
- **🦀 रस्ट में लिखा गया**: उच्च प्रदर्शन, मेमोरी सुरक्षा, और शून्य-लागत एब्सट्रैक्शन
- **🔌 प्रदाता-अज्ञेयवादी**: OpenAI, Anthropic, Google Gemini, Ollama, और अन्य का समर्थन
- **📱 बहु-चैनल**: Telegram, Matrix (E2EE के साथ), CLI, और अन्य
- **🧠 प्लगेबल मेमोरी**: SQLite और Markdown बैकएंड
- **🛠️ विस्तार योग्य टूल**: आसानी से कस्टम टूल जोड़ें
- **🔒 सुरक्षा-पहले**: रिवर्स-प्रॉक्सी, गोपनीयता-पहले डिज़ाइन
- **डिफ़ॉल्ट रूप से हल्का रनटाइम** — सामान्य CLI और स्थिति वर्कफ़्लो रिलीज़ बिल्ड पर कुछ-मेगाबाइट मेमोरी एन्वेलप में चलते हैं।
- **लागत-कुशल डिप्लॉयमेंट** — $10 बोर्ड और छोटे क्लाउड इंस्टेंस के लिए डिज़ाइन किया गया, कोई भारी रनटाइम निर्भरता नहीं।
- **तेज़ कोल्ड स्टार्ट** — एकल-बाइनरी Rust रनटाइम कमांड और डेमन स्टार्टअप को लगभग तत्काल रखता है।
- **पोर्टेबल आर्किटेक्चर** — ARM, x86, और RISC-V पर एक बाइनरी जिसमें स्वैपेबल प्रदाता/चैनल/उपकरण हैं।
- **लोकल-फर्स्ट Gateway** — सेशन, चैनल, टूल, cron, SOPs, और इवेंट के लिए एकल कंट्रोल प्लेन।
- **मल्टी-चैनल इनबॉक्स** — WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WebSocket, और अन्य।
- **मल्टी-एजेंट ऑर्केस्ट्रेशन (Hands)** — स्वायत्त एजेंट स्वार्म जो शेड्यूल पर चलते हैं और समय के साथ स्मार्ट होते जाते हैं।
- **मानक संचालन प्रक्रियाएँ (SOPs)** — MQTT, webhook, cron, और पेरीफेरल ट्रिगर के साथ इवेंट-ड्रिवन वर्कफ़्लो ऑटोमेशन।
- **वेब डैशबोर्ड** — React 19 + Vite वेब UI जिसमें रियल-टाइम चैट, मेमोरी ब्राउज़र, कॉन्फ़िग एडिटर, cron मैनेजर, और टूल इंस्पेक्टर है।
- **हार्डवेयर पेरीफेरल**`Peripheral` trait के माध्यम से ESP32, STM32 Nucleo, Arduino, Raspberry Pi GPIO।
- **प्रथम-श्रेणी उपकरण** — shell, फ़ाइल I/O, browser, git, वेब fetch/search, MCP, Jira, Notion, Google Workspace, और 70+ अन्य।
- **लाइफसाइकल हुक** — हर चरण पर LLM कॉल, टूल निष्पादन, और संदेशों को इंटरसेप्ट और संशोधित करें।
- **स्किल प्लेटफ़ॉर्म** — बंडल, समुदाय, और workspace स्किल जिनमें सुरक्षा ऑडिटिंग है।
- **टनल सपोर्ट** — रिमोट एक्सेस के लिए Cloudflare, Tailscale, ngrok, OpenVPN, और कस्टम टनल।
---
### टीमें ZeroClaw क्यों चुनती हैं
## त्वरित शुरुआत
- **डिफ़ॉल्ट रूप से हल्का:** छोटी Rust बाइनरी, तेज़ स्टार्टअप, कम मेमोरी फुटप्रिंट।
- **डिज़ाइन से सुरक्षित:** पेयरिंग, सख्त सैंडबॉक्सिंग, स्पष्ट अनुमति सूचियाँ, workspace स्कोपिंग।
- **पूरी तरह से स्वैपेबल:** कोर सिस्टम traits हैं (providers, channels, tools, memory, tunnels)।
- **कोई लॉक-इन नहीं:** OpenAI-संगत प्रदाता समर्थन + प्लगेबल कस्टम एंडपॉइंट।
### आवश्यकताएं
## बेंचमार्क स्नैपशॉट (ZeroClaw बनाम OpenClaw, प्रतिलिपि योग्य)
- रस्ट 1.70+
- एक LLM प्रदाता API कुंजी (Anthropic, OpenAI, आदि)
स्थानीय मशीन त्वरित बेंचमार्क (macOS arm64, फ़रवरी 2026) 0.8GHz एज हार्डवेयर के लिए सामान्यीकृत।
| | OpenClaw | NanoBot | PicoClaw | ZeroClaw 🦀 |
| ------------------------- | ------------- | -------------- | --------------- | -------------------- |
| **भाषा** | TypeScript | Python | Go | **Rust** |
| **RAM** | > 1GB | > 100MB | < 10MB | **< 5MB** |
| **स्टार्टअप (0.8GHz कोर)** | > 500s | > 30s | < 1s | **< 10ms** |
| **बाइनरी आकार** | ~28MB (dist) | N/A (Scripts) | ~8MB | **~8.8 MB** |
| **लागत** | Mac Mini $599 | Linux SBC ~$50 | Linux Board $10 | **कोई भी हार्डवेयर $10** |
> नोट: ZeroClaw परिणाम `/usr/bin/time -l` का उपयोग करके रिलीज़ बिल्ड पर मापे गए हैं। OpenClaw को Node.js रनटाइम की आवश्यकता है (आमतौर पर ~390MB अतिरिक्त मेमोरी ओवरहेड), जबकि NanoBot को Python रनटाइम की आवश्यकता है। PicoClaw और ZeroClaw स्टैटिक बाइनरी हैं। ऊपर दिए गए RAM आँकड़े रनटाइम मेमोरी हैं; बिल्ड-टाइम कंपाइलेशन आवश्यकताएँ अधिक हैं।
<p align="center">
<img src="docs/assets/zeroclaw-comparison.jpeg" alt="ZeroClaw vs OpenClaw Comparison" width="800" />
</p>
### प्रतिलिपि योग्य स्थानीय माप
### इंस्टॉलेशन
```bash
cargo build --release
ls -lh target/release/zeroclaw
# रिपॉजिटरी क्लोन करें
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
/usr/bin/time -l target/release/zeroclaw --help
/usr/bin/time -l target/release/zeroclaw status
# बिल्ड करें
cargo build --release
# चलाएं
cargo run --release
```
## अब तक हमने जो कुछ बनाया है
### Docker के साथ
### कोर प्लेटफ़ॉर्म
- Gateway HTTP/WS/SSE कंट्रोल प्लेन जिसमें सेशन, प्रेज़ेंस, कॉन्फ़िग, cron, webhooks, वेब डैशबोर्ड, और पेयरिंग है।
- CLI सरफेस: `gateway`, `agent`, `onboard`, `doctor`, `status`, `service`, `migrate`, `auth`, `cron`, `channel`, `skills`
- एजेंट ऑर्केस्ट्रेशन लूप जिसमें टूल डिस्पैच, प्रॉम्प्ट निर्माण, संदेश वर्गीकरण, और मेमोरी लोडिंग है।
- सुरक्षा नीति प्रवर्तन, स्वायत्तता स्तर, और अनुमोदन गेटिंग के साथ सेशन मॉडल।
- 20+ LLM बैकएंड पर फ़ेलओवर, रिट्राई, और मॉडल रूटिंग के साथ रेज़िलिएंट प्रदाता रैपर।
### चैनल
चैनल: WhatsApp (नेटिव), Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, DingTalk, Lark, Mattermost, Nextcloud Talk, Nostr, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WATI, Mochat, Linq, Notion, WebSocket, ClawdTalk।
फ़ीचर-गेटेड: Matrix (`channel-matrix`), Lark (`channel-lark`), Nostr (`channel-nostr`)।
### वेब डैशबोर्ड
React 19 + Vite 6 + Tailwind CSS 4 वेब डैशबोर्ड सीधे Gateway से सर्व किया जाता है:
- **डैशबोर्ड** — सिस्टम अवलोकन, स्वास्थ्य स्थिति, अपटाइम, लागत ट्रैकिंग
- **एजेंट चैट** — एजेंट के साथ इंटरैक्टिव चैट
- **मेमोरी** — मेमोरी प्रविष्टियाँ ब्राउज़ और प्रबंधित करें
- **कॉन्फ़िग** — कॉन्फ़िगरेशन देखें और संपादित करें
- **Cron** — शेड्यूल किए गए कार्य प्रबंधित करें
- **टूल्स** — उपलब्ध उपकरण ब्राउज़ करें
- **लॉग्स** — एजेंट गतिविधि लॉग देखें
- **लागत** — टोकन उपयोग और लागत ट्रैकिंग
- **डॉक्टर** — सिस्टम स्वास्थ्य डायग्नोस्टिक्स
- **इंटीग्रेशन** — इंटीग्रेशन स्थिति और सेटअप
- **पेयरिंग** — डिवाइस पेयरिंग प्रबंधन
### फ़र्मवेयर लक्ष्य
| लक्ष्य | प्लेटफ़ॉर्म | उद्देश्य |
|--------|----------|---------|
| ESP32 | Espressif ESP32 | वायरलेस पेरीफेरल एजेंट |
| ESP32-UI | ESP32 + Display | विज़ुअल इंटरफ़ेस वाला एजेंट |
| STM32 Nucleo | STM32 (ARM Cortex-M) | औद्योगिक पेरीफेरल |
| Arduino | Arduino | बेसिक सेंसर/एक्चुएटर ब्रिज |
| Uno Q Bridge | Arduino Uno | एजेंट के लिए सीरियल ब्रिज |
### उपकरण + ऑटोमेशन
- **कोर:** shell, फ़ाइल read/write/edit, git ऑपरेशन, glob search, content search
- **वेब:** ब्राउज़र नियंत्रण, web fetch, web search, screenshot, image info, PDF read
- **इंटीग्रेशन:** Jira, Notion, Google Workspace, Microsoft 365, LinkedIn, Composio, Pushover
- **MCP:** Model Context Protocol टूल रैपर + डिफ़र्ड टूल सेट
- **शेड्यूलिंग:** cron add/remove/update/run, schedule tool
- **मेमोरी:** recall, store, forget, knowledge, project intel
- **उन्नत:** delegate (एजेंट-टू-एजेंट), swarm, model switch/routing, security ops, cloud ops
- **हार्डवेयर:** board info, memory map, memory read (फ़ीचर-गेटेड)
### रनटाइम + सुरक्षा
- **स्वायत्तता स्तर:** ReadOnly, Supervised (डिफ़ॉल्ट), Full।
- **सैंडबॉक्सिंग:** workspace आइसोलेशन, पथ ट्रैवर्सल ब्लॉकिंग, कमांड अनुमति सूचियाँ, प्रतिबंधित पथ, Landlock (Linux), Bubblewrap।
- **दर सीमित:** प्रति घंटे अधिकतम कार्य, प्रति दिन अधिकतम लागत (कॉन्फ़िगर योग्य)।
- **अनुमोदन गेटिंग:** मध्यम/उच्च जोखिम संचालन के लिए इंटरैक्टिव अनुमोदन।
- **आपातकालीन रोक:** आपातकालीन शटडाउन क्षमता।
- **129+ सुरक्षा परीक्षण** स्वचालित CI में।
### ऑप्स + पैकेजिंग
- वेब डैशबोर्ड सीधे Gateway से सर्व किया जाता है।
- टनल सपोर्ट: Cloudflare, Tailscale, ngrok, OpenVPN, कस्टम कमांड।
- कंटेनराइज़्ड निष्पादन के लिए Docker रनटाइम एडेप्टर।
- CI/CD: बीटा (पुश पर ऑटो) → स्टेबल (मैनुअल डिस्पैच) → Docker, crates.io, Scoop, AUR, Homebrew, ट्वीट।
- Linux (x86_64, aarch64, armv7), macOS (x86_64, aarch64), Windows (x86_64) के लिए प्री-बिल्ट बाइनरी।
```bash
docker run -d \
--name zeroclaw \
-e ANTHROPIC_API_KEY=your_key \
-v zeroclaw-data:/app/data \
zeroclaw/zeroclaw:latest
```
---
## कॉन्फ़िगरेशन
न्यूनतम `~/.zeroclaw/config.toml`:
ZeroClaw एक YAML कॉन्फ़िगरेशन फ़ाइल का उपयोग करता है। डिफ़ॉल्ट रूप से, यह `config.yaml` देखता है।
```toml
default_provider = "anthropic"
api_key = "sk-ant-..."
```yaml
# डिफ़ॉल्ट प्रदाता
provider: anthropic
# प्रदाता कॉन्फ़िगरेशन
providers:
anthropic:
api_key: ${ANTHROPIC_API_KEY}
model: claude-3-5-sonnet-20241022
openai:
api_key: ${OPENAI_API_KEY}
model: gpt-4o
# मेमोरी कॉन्फ़िगरेशन
memory:
backend: sqlite
path: data/memory.db
# चैनल कॉन्फ़िगरेशन
channels:
telegram:
token: ${TELEGRAM_BOT_TOKEN}
```
पूर्ण कॉन्फ़िगरेशन संदर्भ: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md)।
---
### चैनल कॉन्फ़िगरेशन
## दस्तावेज़ीकरण
**Telegram:**
```toml
[channels.telegram]
bot_token = "123456:ABC-DEF..."
```
विस्तृत दस्तावेज़ीकरण के लिए, देखें:
**Discord:**
```toml
[channels.discord]
token = "your-bot-token"
```
- [दस्तावेज़ीकरण हब](docs/README.md)
- [कमांड संदर्भ](docs/commands-reference.md)
- [प्रदाता संदर्भ](docs/providers-reference.md)
- [चैनल संदर्भ](docs/channels-reference.md)
- [कॉन्फ़िगरेशन संदर्भ](docs/config-reference.md)
**Slack:**
```toml
[channels.slack]
bot_token = "xoxb-..."
app_token = "xapp-..."
```
**WhatsApp:**
```toml
[channels.whatsapp]
enabled = true
```
**Matrix:**
```toml
[channels.matrix]
homeserver_url = "https://matrix.org"
username = "@bot:matrix.org"
password = "..."
```
**Signal:**
```toml
[channels.signal]
phone_number = "+1234567890"
```
### टनल कॉन्फ़िगरेशन
```toml
[tunnel]
kind = "cloudflare" # or "tailscale", "ngrok", "openvpn", "custom", "none"
```
विवरण: [चैनल संदर्भ](docs/reference/api/channels-reference.md) · [कॉन्फ़िग संदर्भ](docs/reference/api/config-reference.md)
### रनटाइम सपोर्ट (वर्तमान)
- **`native`** (डिफ़ॉल्ट) — सीधा प्रोसेस निष्पादन, सबसे तेज़ पथ, विश्वसनीय वातावरण के लिए आदर्श।
- **`docker`** — पूर्ण कंटेनर आइसोलेशन, लागू सुरक्षा नीतियाँ, Docker आवश्यक।
सख्त सैंडबॉक्सिंग या नेटवर्क आइसोलेशन के लिए `runtime.kind = "docker"` सेट करें।
## सब्सक्रिप्शन ऑथ (OpenAI Codex / Claude Code / Gemini)
ZeroClaw सब्सक्रिप्शन-नेटिव ऑथ प्रोफ़ाइल का समर्थन करता है (मल्टी-अकाउंट, रेस्ट पर एन्क्रिप्टेड)।
- स्टोर फ़ाइल: `~/.zeroclaw/auth-profiles.json`
- एन्क्रिप्शन कुंजी: `~/.zeroclaw/.secret_key`
- प्रोफ़ाइल id फ़ॉर्मेट: `<provider>:<profile_name>` (उदाहरण: `openai-codex:work`)
```bash
# OpenAI Codex OAuth (ChatGPT subscription)
zeroclaw auth login --provider openai-codex --device-code
# Gemini OAuth
zeroclaw auth login --provider gemini --profile default
# Anthropic setup-token
zeroclaw auth paste-token --provider anthropic --profile default --auth-kind authorization
# Check / refresh / switch profile
zeroclaw auth status
zeroclaw auth refresh --provider openai-codex --profile default
zeroclaw auth use --provider openai-codex --profile work
# Run the agent with subscription auth
zeroclaw agent --provider openai-codex -m "hello"
zeroclaw agent --provider anthropic -m "hello"
```
## एजेंट workspace + स्किल
Workspace रूट: `~/.zeroclaw/workspace/` (कॉन्फ़िग के माध्यम से कॉन्फ़िगर करने योग्य)।
इंजेक्ट किए गए प्रॉम्प्ट फ़ाइलें:
- `IDENTITY.md` — एजेंट का व्यक्तित्व और भूमिका
- `USER.md` — उपयोगकर्ता संदर्भ और प्राथमिकताएँ
- `MEMORY.md` — दीर्घकालिक तथ्य और सबक
- `AGENTS.md` — सेशन सम्मेलन और इनिशियलाइज़ेशन नियम
- `SOUL.md` — कोर पहचान और संचालन सिद्धांत
स्किल: `~/.zeroclaw/workspace/skills/<skill>/SKILL.md` या `SKILL.toml`
```bash
# List installed skills
zeroclaw skills list
# Install from git
zeroclaw skills install https://github.com/user/my-skill.git
# Security audit before install
zeroclaw skills audit https://github.com/user/my-skill.git
# Remove a skill
zeroclaw skills remove my-skill
```
## CLI कमांड
```bash
# Workspace management
zeroclaw onboard # Guided setup wizard
zeroclaw status # Show daemon/agent status
zeroclaw doctor # Run system diagnostics
# Gateway + daemon
zeroclaw gateway # Start gateway server (127.0.0.1:42617)
zeroclaw daemon # Start full autonomous runtime
# Agent
zeroclaw agent # Interactive chat mode
zeroclaw agent -m "message" # Single message mode
# Service management
zeroclaw service install # Install as OS service (launchd/systemd)
zeroclaw service start|stop|restart|status
# Channels
zeroclaw channel list # List configured channels
zeroclaw channel doctor # Check channel health
zeroclaw channel bind-telegram 123456789
# Cron + scheduling
zeroclaw cron list # List scheduled jobs
zeroclaw cron add "*/5 * * * *" --prompt "Check system health"
zeroclaw cron remove <id>
# Memory
zeroclaw memory list # List memory entries
zeroclaw memory get <key> # Retrieve a memory
zeroclaw memory stats # Memory statistics
# Auth profiles
zeroclaw auth login --provider <name>
zeroclaw auth status
zeroclaw auth use --provider <name> --profile <profile>
# Hardware peripherals
zeroclaw hardware discover # Scan for connected devices
zeroclaw peripheral list # List connected peripherals
zeroclaw peripheral flash # Flash firmware to device
# Migration
zeroclaw migrate openclaw --dry-run
zeroclaw migrate openclaw
# Shell completions
source <(zeroclaw completions bash)
zeroclaw completions zsh > ~/.zfunc/_zeroclaw
```
पूर्ण कमांड संदर्भ: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
<!-- markdownlint-disable MD001 MD024 -->
## पूर्वापेक्षाएँ
<details>
<summary><strong>Windows</strong></summary>
#### आवश्यक
1. **Visual Studio Build Tools** (MSVC लिंकर और Windows SDK प्रदान करता है):
```powershell
winget install Microsoft.VisualStudio.2022.BuildTools
```
इंस्टॉलेशन के दौरान (या Visual Studio Installer के माध्यम से), **"Desktop development with C++"** वर्कलोड चुनें।
2. **Rust टूलचेन:**
```powershell
winget install Rustlang.Rustup
```
इंस्टॉलेशन के बाद, एक नया टर्मिनल खोलें और `rustup default stable` चलाएँ ताकि स्थिर टूलचेन सक्रिय हो।
3. **सत्यापित करें** कि दोनों काम कर रहे हैं:
```powershell
rustc --version
cargo --version
```
#### वैकल्पिक
- **Docker Desktop** — केवल तभी आवश्यक जब [Docker सैंडबॉक्स्ड रनटाइम](#रनटाइम-सपोर्ट-वर्तमान) (`runtime.kind = "docker"`) का उपयोग कर रहे हों। `winget install Docker.DockerDesktop` से इंस्टॉल करें।
</details>
<details>
<summary><strong>Linux / macOS</strong></summary>
#### आवश्यक
1. **बिल्ड एसेंशियल:**
- **Linux (Debian/Ubuntu):** `sudo apt install build-essential pkg-config`
- **Linux (Fedora/RHEL):** `sudo dnf group install development-tools && sudo dnf install pkg-config`
- **macOS:** Xcode Command Line Tools इंस्टॉल करें: `xcode-select --install`
2. **Rust टूलचेन:**
```bash
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
```
विवरण के लिए [rustup.rs](https://rustup.rs) देखें।
3. **सत्यापित करें** कि दोनों काम कर रहे हैं:
```bash
rustc --version
cargo --version
```
#### एक-पंक्ति इंस्टॉलर
या ऊपर के चरणों को छोड़ें और एक ही कमांड में सब कुछ (सिस्टम deps, Rust, ZeroClaw) इंस्टॉल करें:
```bash
curl -LsSf https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/install.sh | bash
```
#### कंपाइलेशन संसाधन आवश्यकताएँ
स्रोत से बिल्ड करने के लिए परिणामी बाइनरी चलाने से अधिक संसाधनों की आवश्यकता होती है:
| संसाधन | न्यूनतम | अनुशंसित |
| -------------- | ------- | ----------- |
| **RAM + swap** | 2 GB | 4 GB+ |
| **खाली डिस्क** | 6 GB | 10 GB+ |
यदि आपका होस्ट न्यूनतम से नीचे है, तो प्री-बिल्ट बाइनरी का उपयोग करें:
```bash
./install.sh --prefer-prebuilt
```
बिना सोर्स फ़ॉलबैक के केवल बाइनरी इंस्टॉल की आवश्यकता के लिए:
```bash
./install.sh --prebuilt-only
```
#### वैकल्पिक
- **Docker** — केवल तभी आवश्यक जब [Docker सैंडबॉक्स्ड रनटाइम](#रनटाइम-सपोर्ट-वर्तमान) (`runtime.kind = "docker"`) का उपयोग कर रहे हों। अपने पैकेज मैनेजर या [docker.com](https://docs.docker.com/engine/install/) से इंस्टॉल करें।
> **नोट:** डिफ़ॉल्ट `cargo build --release` पीक कंपाइल प्रेशर कम करने के लिए `codegen-units=1` का उपयोग करता है। शक्तिशाली मशीनों पर तेज़ बिल्ड के लिए, `cargo build --profile release-fast` का उपयोग करें।
</details>
<!-- markdownlint-enable MD001 MD024 -->
### प्री-बिल्ट बाइनरी
रिलीज़ एसेट इसके लिए प्रकाशित किए जाते हैं:
- Linux: `x86_64`, `aarch64`, `armv7`
- macOS: `x86_64`, `aarch64`
- Windows: `x86_64`
नवीनतम एसेट यहाँ से डाउनलोड करें:
<https://github.com/zeroclaw-labs/zeroclaw/releases/latest>
## दस्तावेज़
इनका उपयोग तब करें जब आप ऑनबोर्डिंग प्रवाह से आगे हों और गहरा संदर्भ चाहें।
- नेविगेशन और "क्या कहाँ है" के लिए [दस्तावेज़ सूचकांक](docs/README.md) से शुरू करें।
- पूर्ण सिस्टम मॉडल के लिए [आर्किटेक्चर अवलोकन](docs/architecture.md) पढ़ें।
- जब आपको हर कुंजी और उदाहरण चाहिए तो [कॉन्फ़िगरेशन संदर्भ](docs/reference/api/config-reference.md) का उपयोग करें।
- [संचालन रनबुक](docs/ops/operations-runbook.md) के अनुसार Gateway चलाएँ।
- मार्गदर्शित सेटअप के लिए [ZeroClaw Onboard](#त्वरित-शुरुआत) का पालन करें।
- [समस्या निवारण गाइड](docs/ops/troubleshooting.md) से सामान्य विफलताओं का निदान करें।
- कुछ भी एक्सपोज़ करने से पहले [सुरक्षा मार्गदर्शन](docs/security/README.md) की समीक्षा करें।
### संदर्भ दस्तावेज़
- दस्तावेज़ हब: [docs/README.md](docs/README.md)
- एकीकृत दस्तावेज़ TOC: [docs/SUMMARY.md](docs/SUMMARY.md)
- कमांड संदर्भ: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
- कॉन्फ़िग संदर्भ: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md)
- प्रदाता संदर्भ: [docs/reference/api/providers-reference.md](docs/reference/api/providers-reference.md)
- चैनल संदर्भ: [docs/reference/api/channels-reference.md](docs/reference/api/channels-reference.md)
- संचालन रनबुक: [docs/ops/operations-runbook.md](docs/ops/operations-runbook.md)
- समस्या निवारण: [docs/ops/troubleshooting.md](docs/ops/troubleshooting.md)
### सहयोग दस्तावेज़
- योगदान गाइड: [CONTRIBUTING.md](CONTRIBUTING.md)
- PR वर्कफ़्लो नीति: [docs/contributing/pr-workflow.md](docs/contributing/pr-workflow.md)
- CI वर्कफ़्लो गाइड: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- समीक्षक प्लेबुक: [docs/contributing/reviewer-playbook.md](docs/contributing/reviewer-playbook.md)
- सुरक्षा प्रकटीकरण नीति: [SECURITY.md](SECURITY.md)
- दस्तावेज़ टेम्पलेट: [docs/contributing/doc-template.md](docs/contributing/doc-template.md)
### डिप्लॉयमेंट + संचालन
- नेटवर्क डिप्लॉयमेंट गाइड: [docs/ops/network-deployment.md](docs/ops/network-deployment.md)
- प्रॉक्सी एजेंट प्लेबुक: [docs/ops/proxy-agent-playbook.md](docs/ops/proxy-agent-playbook.md)
- हार्डवेयर गाइड: [docs/hardware/README.md](docs/hardware/README.md)
## Smooth Crab 🦀
ZeroClaw को smooth crab 🦀 के लिए बनाया गया था, एक तेज़ और कुशल AI सहायक। Argenis De La Rosa और समुदाय द्वारा निर्मित।
- [zeroclawlabs.ai](https://zeroclawlabs.ai)
- [@zeroclawlabs](https://x.com/zeroclawlabs)
## ZeroClaw का समर्थन करें
यदि ZeroClaw आपके काम में मदद करता है और आप चल रहे विकास का समर्थन करना चाहते हैं, तो आप यहाँ दान कर सकते हैं:
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=for-the-badge&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
### 🙏 विशेष धन्यवाद
उन समुदायों और संस्थानों को हृदय से धन्यवाद जो इस ओपन-सोर्स कार्य को प्रेरित और ईंधन देते हैं:
- **Harvard University** — बौद्धिक जिज्ञासा को बढ़ावा देने और संभावनाओं की सीमाओं को आगे बढ़ाने के लिए।
- **MIT** — खुले ज्ञान, ओपन सोर्स, और इस विश्वास का समर्थन करने के लिए कि तकनीक सभी के लिए सुलभ होनी चाहिए।
- **Sundai Club** — समुदाय, ऊर्जा, और महत्वपूर्ण चीज़ें बनाने के अथक प्रयास के लिए।
- **दुनिया और उससे परे** 🌍✨ — हर योगदानकर्ता, सपने देखने वाले, और बिल्डर के लिए जो ओपन सोर्स को भलाई की शक्ति बना रहे हैं। यह आपके लिए है।
हम खुले में बना रहे हैं क्योंकि सबसे अच्छे विचार हर जगह से आते हैं। यदि आप यह पढ़ रहे हैं, तो आप इसका हिस्सा हैं। स्वागत है। 🦀❤️
---
## योगदान
ZeroClaw में नए हैं? [`good first issue`](https://github.com/zeroclaw-labs/zeroclaw/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) लेबल वाले मुद्दों की तलाश करें — शुरू करने का तरीका जानने के लिए हमारा [योगदान गाइड](CONTRIBUTING.md#first-time-contributors) देखें। AI/vibe-coded PRs का स्वागत है! 🤖
[CONTRIBUTING.md](CONTRIBUTING.md) और [CLA.md](docs/contributing/cla.md) देखें। एक trait लागू करें, PR सबमिट करें:
- CI वर्कफ़्लो गाइड: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- नया `Provider``src/providers/`
- नया `Channel``src/channels/`
- नया `Observer``src/observability/`
- नया `Tool``src/tools/`
- नया `Memory``src/memory/`
- नया `Tunnel``src/tunnel/`
- नया `Peripheral``src/peripherals/`
- नया `Skill``~/.zeroclaw/workspace/skills/<name>/`
<!-- BEGIN:RECENT_CONTRIBUTORS -->
<!-- END:RECENT_CONTRIBUTORS -->
## ⚠️ आधिकारिक रिपॉजिटरी और प्रतिरूपण चेतावनी
**यह एकमात्र आधिकारिक ZeroClaw रिपॉजिटरी है:**
> https://github.com/zeroclaw-labs/zeroclaw
कोई भी अन्य रिपॉजिटरी, संगठन, डोमेन, या पैकेज जो "ZeroClaw" होने का दावा करता है या ZeroClaw Labs से संबद्धता का संकेत देता है, **अनधिकृत है और इस प्रोजेक्ट से संबद्ध नहीं है**। ज्ञात अनधिकृत फ़ोर्क [TRADEMARK.md](docs/maintainers/trademark.md) में सूचीबद्ध किए जाएँगे।
यदि आप प्रतिरूपण या ट्रेडमार्क दुरुपयोग का सामना करते हैं, तो कृपया [एक इश्यू खोलें](https://github.com/zeroclaw-labs/zeroclaw/issues)।
योगदान का स्वागत है! कृपया [योगदान गाइड](CONTRIBUTING.md) पढ़ें।
---
## लाइसेंस
ZeroClaw अधिकतम खुलेपन और योगदानकर्ता सुरक्षा के लिए दोहरे-लाइसेंस प्राप्त है:
यह प्रोजेक्ट दोहरे लाइसेंस प्राप्त है:
| लाइसेंस | उपयोग का मामला |
|---|---|
| [MIT](LICENSE-MIT) | ओपन-सोर्स, अनुसंधान, अकादमिक, व्यक्तिगत उपयोग |
| [Apache 2.0](LICENSE-APACHE) | पेटेंट सुरक्षा, संस्थागत, वाणिज्यिक डिप्लॉयमेंट |
- MIT लाइसेंस
- Apache लाइसेंस, संस्करण 2.0
आप कोई भी लाइसेंस चुन सकते हैं। **योगदानकर्ता स्वचालित रूप से दोनों के तहत अधिकार प्रदान करते हैं** — पूर्ण योगदानकर्ता समझौते के लिए [CLA.md](docs/contributing/cla.md) देखें।
### ट्रेडमार्क
**ZeroClaw** नाम और लोगो ZeroClaw Labs के ट्रेडमार्क हैं। यह लाइसेंस समर्थन या संबद्धता का संकेत देने के लिए इनका उपयोग करने की अनुमति नहीं देता। अनुमत और निषिद्ध उपयोग के लिए [TRADEMARK.md](docs/maintainers/trademark.md) देखें।
### योगदानकर्ता सुरक्षा
- आप अपने योगदान का **कॉपीराइट बनाए रखते हैं**
- **पेटेंट अनुदान** (Apache 2.0) आपको अन्य योगदानकर्ताओं द्वारा पेटेंट दावों से बचाता है
- आपके योगदान कमिट इतिहास और [NOTICE](NOTICE) में **स्थायी रूप से श्रेयित** हैं
- योगदान करने से कोई ट्रेडमार्क अधिकार स्थानांतरित नहीं होते
विवरण के लिए [LICENSE-APACHE](LICENSE-APACHE) और [LICENSE-MIT](LICENSE-MIT) देखें।
---
**ZeroClaw** — शून्य ओवरहेड। शून्य समझौता। कहीं भी डिप्लॉय करें। कुछ भी स्वैप करें। 🦀
## समुदाय
## योगदानकर्ता
- [Telegram](https://t.me/zeroclawlabs)
- [Facebook Group](https://www.facebook.com/groups/zeroclaw)
- [WeChat Group](https://zeroclawlabs.cn/group.jpg)
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors">
<img src="https://contrib.rocks/image?repo=zeroclaw-labs/zeroclaw" alt="ZeroClaw contributors" />
</a>
---
यह सूची GitHub योगदानकर्ता ग्राफ़ से उत्पन्न होती है और स्वचालित रूप से अपडेट होती है।
## प्रायोजक
## स्टार इतिहास
यदि ZeroClaw आपके लिए उपयोगी है, तो कृपया हमें एक कॉफी खरीदने पर विचार करें:
<p align="center">
<a href="https://www.star-history.com/#zeroclaw-labs/zeroclaw&type=date&legend=top-left">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&theme=dark&legend=top-left" />
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
</picture>
</a>
</p>
[![Buy Me a Coffee](https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee)](https://buymeacoffee.com/argenistherose)
<!-- BEGIN:RECENT_CONTRIBUTORS -->
### 🌟 Recent Contributors (v0.3.1)
3 contributors shipped features, fixes, and improvements in this release cycle:
- **Argenis**
- **argenis de la rosa**
- **Claude Opus 4.6**
Thank you to everyone who opened issues, reviewed PRs, translated docs, and helped test. Every contribution matters. 🦀
<!-- END:RECENT_CONTRIBUTORS -->

View File

@ -1,29 +1,23 @@
<p align="center">
<img src="https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/docs/assets/zeroclaw-banner.png" alt="ZeroClaw" width="600" />
<img src="zeroclaw.png" alt="ZeroClaw" width="200" />
</p>
<h1 align="center">🦀 ZeroClaw — Szemelyes MI Asszisztens</h1>
<h1 align="center">ZeroClaw 🦀</h1>
<p align="center">
<strong>Nulla terheles. Nulla kompromisszum. 100% Rust. 100% Agnosztikus.</strong><br>
⚡️ <strong>$10-os hardveren fut <5MB RAM-mal: Ez 99%-kal kevesebb memoria, mint az OpenClaw es 98%-kal olcsobb, mint egy Mac mini!</strong>
<strong>Nulla többletköltség. Nulla kompromisszum. 100% Rust. 100% Agnosztikus.</strong><br>
⚡️ <strong>$10-es hardveren fut <5MB RAM-mal: Ez 99%-kal kevesebb memória, mint az OpenClaw és 98%-kal olcsóbb, mint egy Mac mini!</strong>
</p>
<p align="center">
<a href="LICENSE-APACHE"><img src="https://img.shields.io/badge/license-MIT%20OR%20Apache%202.0-blue.svg" alt="License: MIT OR Apache-2.0" /></a>
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors"><img src="https://img.shields.io/github/contributors/zeroclaw-labs/zeroclaw?color=green" alt="Contributors" /></a>
<a href="NOTICE"><img src="https://img.shields.io/badge/contributors-27+-green.svg" alt="Contributors" /></a>
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
<a href="https://x.com/zeroclawlabs?s=21"><img src="https://img.shields.io/badge/X-%40zeroclawlabs-000000?style=flat&logo=x&logoColor=white" alt="X: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclawlabs"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
<a href="https://discord.com/invite/wDshRVqRjx"><img src="https://img.shields.io/badge/Discord-Join-5865F2?style=flat&logo=discord&logoColor=white" alt="Discord" /></a>
<a href="https://www.instagram.com/therealzeroclaw"><img src="https://img.shields.io/badge/Instagram-%40therealzeroclaw-E4405F?style=flat&logo=instagram&logoColor=white" alt="Instagram: @therealzeroclaw" /></a>
<a href="https://www.tiktok.com/@zeroclawlabs"><img src="https://img.shields.io/badge/TikTok-%40zeroclawlabs-000000?style=flat&logo=tiktok&logoColor=white" alt="TikTok: @zeroclawlabs" /></a>
<a href="https://www.rednote.com/user/profile/69b735e6000000002603927e"><img src="https://img.shields.io/badge/RedNote-Official-FF2442?style=flat" alt="RedNote" /></a>
<a href="https://www.reddit.com/r/zeroclawlabs/"><img src="https://img.shields.io/badge/Reddit-r%2Fzeroclawlabs-FF4500?style=flat&logo=reddit&logoColor=white" alt="Reddit: r/zeroclawlabs" /></a>
</p>
<p align="center">
A Harvard, MIT es Sundai.Club kozossegek diakjai es tagjai epitettek.
<a href="https://zeroclawlabs.cn/group.jpg"><img src="https://img.shields.io/badge/WeChat-Group-B7D7A8?logo=wechat&logoColor=white" alt="WeChat Group" /></a>
<a href="https://www.xiaohongshu.com/user/profile/67cbfc43000000000d008307?xsec_token=AB73VnYnGNx5y36EtnnZfGmAmS-6Wzv8WMuGpfwfkg6Yc%3D&xsec_source=pc_search"><img src="https://img.shields.io/badge/Xiaohongshu-Official-FF2442?style=flat" alt="Xiaohongshu: Official" /></a>
<a href="https://t.me/zeroclawlabs"><img src="https://img.shields.io/badge/Telegram-%40zeroclawlabs-26A5E4?style=flat&logo=telegram&logoColor=white" alt="Telegram: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclaw"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
</p>
<p align="center">
@ -61,695 +55,149 @@ A Harvard, MIT es Sundai.Club kozossegek diakjai es tagjai epitettek.
<a href="README.nb.md">🇳🇴 Norsk</a>
</p>
A ZeroClaw egy szemelyes MI asszisztens, amelyet a sajat eszkozeiden futtathatsz. Valaszol a mar hasznalt csatornaidon (WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work es meg tobb). Rendelkezik webes vezerlopulttal valos ideju iranyitashoz, es csatlakoztathat hardver periferiakhoz (ESP32, STM32, Arduino, Raspberry Pi). A Gateway csupan a vezerlesi sik — a termek maga az asszisztens.
Ha szemelyes, egyfelhasznalos asszisztenst szeretnel, ami lokalis, gyors es mindig elerheto, ez az.
<p align="center">
<a href="https://zeroclawlabs.ai">Weboldal</a> ·
<a href="docs/README.md">Dokumentacio</a> ·
<a href="docs/architecture.md">Architektura</a> ·
<a href="#gyors-inditas-tldr">Kezdes</a> ·
<a href="#atallas-openclawrol">Atallas OpenClawrol</a> ·
<a href="docs/ops/troubleshooting.md">Hibaelharitas</a> ·
<a href="https://discord.com/invite/wDshRVqRjx">Discord</a>
</p>
> **Ajanlott beallitas:** futtasd a `zeroclaw onboard` parancsot a terminalban. A ZeroClaw Onboard lepesrol lepesre vegigvezet a gateway, munkater, csatornak es szolgaltato beallitasan. Ez az ajanlott beallitasi ut, es mukodik macOS-en, Linuxon es Windowson (WSL2-n keresztul). Uj telepites? Kezdd itt: [Kezdes](#gyors-inditas-tldr)
### Elofizetes hitelesites (OAuth)
- **OpenAI Codex** (ChatGPT elofizetes)
- **Gemini** (Google OAuth)
- **Anthropic** (API kulcs vagy hitelesitesi token)
Modell megjegyzes: bar sok szolgaltato/modell tamogatott, a legjobb elmeny erdekeben hasznald a legerosebb, legujabb generacios modellt. Lasd [Onboarding](#gyors-inditas-tldr).
Modellek konfiguracio + CLI: [Szolgaltatoi referencia](docs/reference/api/providers-reference.md)
Auth profil rotacio (OAuth vs API kulcsok) + failover: [Modell failover](docs/reference/api/providers-reference.md)
## Telepites (ajanlott)
Futtato kornyezet: Rust stable toolchain. Egyetlen binaris, nincs futtatasi ideju fuggoseg.
### Homebrew (macOS/Linuxbrew)
```bash
brew install zeroclaw
```
### Egy kattintasos telepites
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./install.sh
```
A `zeroclaw onboard` automatikusan lefut a telepites utan a munkater es szolgaltato konfiguralasakor.
## Gyors inditas (TL;DR)
Teljes kezdo utmutato (hitelesites, parositas, csatornak): [Kezdes](docs/setup-guides/one-click-bootstrap.md)
```bash
# Telepites + onboard
./install.sh --api-key "sk-..." --provider openrouter
# Gateway inditasa (webhook szerver + webes vezerlopult)
zeroclaw gateway # alapertelmezett: 127.0.0.1:42617
zeroclaw gateway --port 0 # veletlenszeru port (biztonsagi szilarditas)
# Beszelgess az asszisztenssel
zeroclaw agent -m "Hello, ZeroClaw!"
# Interaktiv mod
zeroclaw agent
# Teljes autonom futtatas inditasa (gateway + csatornak + cron + hands)
zeroclaw daemon
# Allapot ellenorzes
zeroclaw status
# Diagnosztika futtatasa
zeroclaw doctor
```
Frissites? Futtasd a `zeroclaw doctor` parancsot a frissites utan.
### Forrasbol (fejlesztes)
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
cargo build --release --locked
cargo install --path . --force --locked
zeroclaw onboard
```
> **Fejlesztoi alternativa (globalis telepites nelkul):** a parancsokat prefixeld `cargo run --release --`-vel (pelda: `cargo run --release -- status`).
## Atallas OpenClawrol
A ZeroClaw importalhatja az OpenClaw munkateret, memoriat es konfiguraciot:
```bash
# Elonezet az attelepitendo adatokrol (biztonsagos, csak olvasható)
zeroclaw migrate openclaw --dry-run
# Migracio futtatasa
zeroclaw migrate openclaw
```
Ez migralja a memoriabejegyzeseket, munkater fajlokat es konfiguraciot a `~/.openclaw/` konyvtarbol a `~/.zeroclaw/` konyvtarba. A konfiguracio automatikusan JSON-bol TOML-ra konvertalodik.
## Biztonsagi alapertelmezesek (DM hozzaferes)
A ZeroClaw valos uzenetfeluletekkez csatlakozik. Kezeld a bejovo DM-eket nem megbizhato bemenetekkent.
Teljes biztonsagi utmutato: [SECURITY.md](SECURITY.md)
Alapertelmezett viselkedes minden csatornan:
- **DM parositas** (alapertelmezett): az ismeretlen feladok rovid parosito kodot kapnak, es a bot nem dolgozza fel az uzenetuket.
- Jovahagy paranccsal: `zeroclaw pairing approve <channel> <code>` (ezutan a felado felkerul egy lokalis engedelyezesi listara).
- A nyilvanos bejovo DM-ek kifejezett opt-in-t igenyelnek a `config.toml`-ban.
- Futtasd a `zeroclaw doctor` parancsot a kockazatos vagy rosszul konfiguralt DM szabalyzatok feltarasahoz.
**Autonomia szintek:**
| Szint | Viselkedes |
|-------|------------|
| `ReadOnly` | Az agens megfigyel, de nem cselekszik |
| `Supervised` (alapertelmezett) | Az agens jovahagyassal cselekszik kozepes/magas kockazatu muveletenel |
| `Full` | Az agens autonoman cselekszik a szabalyzat hataran belul |
**Sandboxing retegek:** munkater izolalas, utvonal-atjaras blokkolas, parancs engedelyezesi listak, tiltott utvonalak (`/etc`, `/root`, `~/.ssh`), sebessegkorlatozas (max muveletek/ora, koltseg/nap korlatok).
---
<!-- BEGIN:WHATS_NEW -->
### 🚀 What's New in v0.3.1 (March 2026)
| Area | Highlights |
|---|---|
| ci | add Termux (aarch64-linux-android) release target |
<!-- END:WHATS_NEW -->
### 📢 Kozlemenyek
## Mi az a ZeroClaw?
Hasznald ezt a tablat fontos ertesitesekhez (torekenyen kompatibilis valtozasok, biztonsagi tanacsadok, karbantartasi idosavok es kiadasi blokkolok).
A ZeroClaw egy könnyűsúlyú, változtatható és bővíthető AI asszisztens infrastruktúra, amely Rust nyelven készült. Különböző LLM szolgáltatókat (Anthropic, OpenAI, Google, Ollama stb.) köt össze egy egységes felületen keresztül, és több csatornát támogat (Telegram, Matrix, CLI stb.).
| Datum (UTC) | Szint | Ertesites | Teendo |
| ---------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 2026-02-19 | _Kritikus_ | **Nem** allunk kapcsolatban az `openagen/zeroclaw`, `zeroclaw.org` vagy `zeroclaw.net` oldalakkal. A `zeroclaw.org` es `zeroclaw.net` domainek jelenleg az `openagen/zeroclaw` fork-ra mutatnak, es az a domain/tarolo megszemelyesiti a hivatalos weboldalunkat/projektunket. | Ne bizz meg az ezekbol a forrasokbol szarmazo informaciokban, binarisokban, adomanygyujtesekben vagy kozlemenyekben. Kizarolag [ezt a tarolot](https://github.com/zeroclaw-labs/zeroclaw) es az ellenorzott kozossegi media fiokjainkat hasznald. |
| 2026-02-21 | _Fontos_ | A hivatalos weboldalunk most mar el: [zeroclawlabs.ai](https://zeroclawlabs.ai). Koszonjuk turelmuket, amig elokeszitettuk az inditast. Meg mindig latunk megszemelyesitesi kiserleteket, ezert **ne** csatlakozz semmilyen befektetesi vagy adomanygyujtesi tevekenyseghez, amely a ZeroClaw nevet hasznalja, hacsak nem a hivatalos csatornainkon keresztul jelenik meg. | Hasznald [ezt a tarolot](https://github.com/zeroclaw-labs/zeroclaw) egyetlen igazsagforraskent. Kovesd az [X (@zeroclawlabs)](https://x.com/zeroclawlabs?s=21), [Facebook (Group)](https://www.facebook.com/groups/zeroclawlabs) es [Reddit (r/zeroclawlabs)](https://www.reddit.com/r/zeroclawlabs/) oldalakat a hivatalos frissitesekert. |
| 2026-02-19 | _Fontos_ | Az Anthropic frissitette a Hitelesitesi es Hitellevelek Hasznalara vonatkozo felteteleket 2026-02-19-en. A Claude Code OAuth tokenek (Free, Pro, Max) kizarolag a Claude Code es a Claude.ai szamara keszultek; az OAuth tokenek barmely mas termekben, eszkozben vagy szolgaltatasban valo hasznalata (beleertve az Agent SDK-t) nem megengedett es sertheti a Fogyasztoi Szolgaltatasi Felteteleket. | Kerlek ideiglenesen keruld a Claude Code OAuth integraciokat a potencialis veszteseg megelozese erdekeben. Eredeti kikotes: [Authentication and Credential Use](https://code.claude.com/docs/en/legal-and-compliance#authentication-and-credential-use). |
### Fő jellemzők
## Fobb jellemzok
- **🦀 Rust nyelven írva**: Magas teljesítmény, memória biztonság és null költségű absztrakciók
- **🔌 Szolgáltató-agnosztikus**: OpenAI, Anthropic, Google Gemini, Ollama és mások támogatása
- **📱 Többcsatornás**: Telegram, Matrix (E2EE-vel), CLI és mások
- **🧠 Cserélhető memória**: SQLite és Markdown backendek
- **🛠️ Bővíthető eszközök**: Egyszerűen adjon hozzá egyedi eszközöket
- **🔒 Biztonság először**: Fordított proxy, adatvédelem-elsődleges tervezés
- **Konnyu futtatokornyezet alapertelmezetten** — a szokasos CLI es allapot munkafolyamatok nehany megabajtos memoria burkban futnak release buildekben.
- **Koltseghatekony telepites** — $10-os kartyakhoz es kis cloud peldanyokhoz tervezve, nehez futtatokornyezeti fuggosegek nelkul.
- **Gyors hideg inditas** — az egyetlen binarisbol allo Rust futtatokornyezet szinte azonnali parancs- es daemon-inditast biztosit.
- **Hordozhato architektura** — egy binaris ARM, x86 es RISC-V rendszereken cserelheto szolgaltatok/csatornak/eszkozokkel.
- **Lokalis-eloszor Gateway** — egyetlen vezerlesi sik a munkamenetekhez, csatornakhoz, eszkozokhoz, cron-hoz, SOP-khoz es esemenyekhez.
- **Tobbcsatornas beerkeze** — WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WebSocket es meg tobb.
- **Tobbagens orkesztracio (Hands)** — autonom agens rajok, amelyek utemezetten futnak es idovel okosabbak lesznek.
- **Szabvanyos Muveleti Eljarasok (SOPs)** — esemenyvezeerlt munkafolyamat automatizalas MQTT, webhook, cron es periferia triggerekkel.
- **Webes vezerlopult** — React 19 + Vite webes felulet valos ideju csevegeessel, memoriaboongeszevel, konfiguracioszerkesztovel, cron kezelovel es eszkoz vizsgaloval.
- **Hardver periferiak** — ESP32, STM32 Nucleo, Arduino, Raspberry Pi GPIO a `Peripheral` trait-en keresztul.
- **Elso osztalyu eszkozok** — shell, file I/O, browser, git, web fetch/search, MCP, Jira, Notion, Google Workspace es 70+ tovabb.
- **Eletciklus hookok** — LLM hivasok, eszkozvegrehajtasok es uzenetek elfogasa es modositasa minden szinten.
- **Kepesseg platform** — beepitett, kozossegi es munkater kepessegek biztonsagi auditalassal.
- **Tunnel tamogatas** — Cloudflare, Tailscale, ngrok, OpenVPN es egyedi tunnelek tavoli hozzafereshez.
---
### Miert valasztjak a csapatok a ZeroClaw-t
## Gyors Kezdés
- **Konnyu alapertelmezetten:** kis Rust binaris, gyors inditas, alacsony memoriahasznalat.
- **Biztonsagos tervezessel:** parositas, szigoru sandboxing, kifejezett engedelyezesi listak, munkater hatarolás.
- **Teljesen cserelheto:** az alaprendszerek trait-ek (providers, channels, tools, memory, tunnels).
- **Nincs bezartsag:** OpenAI-kompatibilis szolgaltatoi tamogatas + csatlakoztatható egyedi vegpontok.
### Követelmények
## Benchmark pillanatkep (ZeroClaw vs OpenClaw, Reprodukalhato)
- Rust 1.70+
- Egy LLM szolgáltató API kulcs (Anthropic, OpenAI stb.)
Lokalis gepi gyors benchmark (macOS arm64, 2026 feb.) normalizalva 0.8GHz edge hardverre.
| | OpenClaw | NanoBot | PicoClaw | ZeroClaw 🦀 |
| ------------------------- | ------------- | -------------- | --------------- | -------------------- |
| **Nyelv** | TypeScript | Python | Go | **Rust** |
| **RAM** | > 1GB | > 100MB | < 10MB | **< 5MB** |
| **Inditas (0.8GHz core)** | > 500s | > 30s | < 1s | **< 10ms** |
| **Binaris meret** | ~28MB (dist) | N/A (Scripts) | ~8MB | **~8.8 MB** |
| **Koltseg** | Mac Mini $599 | Linux SBC ~$50 | Linux Board $10 | **Barmilyen hardver $10** |
> Megjegyzesek: A ZeroClaw eredmenyek release buildeken merve `/usr/bin/time -l` hasznalataval. Az OpenClaw Node.js futtatokornyezetet igenyel (tipikusan ~390MB memoria terheles), mig a NanoBot Python futtatokornyezetet. A PicoClaw es ZeroClaw statikus binarisok. A fenti RAM adatok futtatasi ideju memoriat mutatnak; a forditasi ideju kovetelmenyek magasabbak.
<p align="center">
<img src="docs/assets/zeroclaw-comparison.jpeg" alt="ZeroClaw vs OpenClaw Comparison" width="800" />
</p>
### Reprodukalhato lokalis meres
### Telepítés
```bash
# Klónozza a repositoryt
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
# Építés
cargo build --release
ls -lh target/release/zeroclaw
/usr/bin/time -l target/release/zeroclaw --help
/usr/bin/time -l target/release/zeroclaw status
# Futtatás
cargo run --release
```
## Minden, amit eddig epitettunk
### Alapplatform
- Gateway HTTP/WS/SSE vezerlesi sik munkamenetekkel, jelenleettel, konfiguracioval, cron-nal, webhookkal, webes vezerlopulttal es parositassal.
- CLI felulet: `gateway`, `agent`, `onboard`, `doctor`, `status`, `service`, `migrate`, `auth`, `cron`, `channel`, `skills`.
- Agens orkesztracios hurk eszkoz-kuldessel, prompt epitessel, uzenet osztalyozassal es memoria betoltessel.
- Munkamenet modell biztonsagi szabalyzat ervenyesitessel, autonomia szintekkel es jovahagyasi kapuval.
- Ellenallo szolgaltatoi wrapper failover-rel, ujraprobalassal es modell iranyitassal 20+ LLM backend-en.
### Csatornak
Csatornak: WhatsApp (native), Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, DingTalk, Lark, Mattermost, Nextcloud Talk, Nostr, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WATI, Mochat, Linq, Notion, WebSocket, ClawdTalk.
Feature-gated: Matrix (`channel-matrix`), Lark (`channel-lark`), Nostr (`channel-nostr`).
### Webes vezerlopult
React 19 + Vite 6 + Tailwind CSS 4 webes vezerlopult, amelyet kozvetlenul a Gateway szolgaltat ki:
- **Dashboard** — rendszer attekintes, egeszsegi allapot, uzemido, koltsegkovetes
- **Agent Chat** — interaktiv csevegees az agenssel
- **Memory** — memoriabejegyzesek bongeszese es kezelese
- **Config** — konfiguracio megtekintese es szerkesztese
- **Cron** — utemezett feladatok kezelese
- **Tools** — elerheto eszkozok bongeszese
- **Logs** — agens tevekenysegnaplo megtekintese
- **Cost** — token hasznalat es koltsegkovetes
- **Doctor** — rendszer egeszseugyi diagnosztika
- **Integrations** — integracios allapot es beallitas
- **Pairing** — eszkoz parositas kezeles
### Firmware celok
| Cel | Platform | Rendeltetees |
|-----|----------|-------------|
| ESP32 | Espressif ESP32 | Vezetek nelkuli periferia agens |
| ESP32-UI | ESP32 + Display | Agens vizualis feluelettel |
| STM32 Nucleo | STM32 (ARM Cortex-M) | Ipari periferia |
| Arduino | Arduino | Alap szenzor/aktualtor hid |
| Uno Q Bridge | Arduino Uno | Soros hid az agenshez |
### Eszkozok + automatizalas
- **Alap:** shell, file read/write/edit, git operations, glob search, content search
- **Web:** browser control, web fetch, web search, screenshot, image info, PDF read
- **Integraciok:** Jira, Notion, Google Workspace, Microsoft 365, LinkedIn, Composio, Pushover
- **MCP:** Model Context Protocol tool wrapper + deferred tool sets
- **Utemezes:** cron add/remove/update/run, schedule tool
- **Memoria:** recall, store, forget, knowledge, project intel
- **Halado:** delegate (agent-to-agent), swarm, model switch/routing, security ops, cloud ops
- **Hardver:** board info, memory map, memory read (feature-gated)
### Futtatokornyezet + biztonsag
- **Autonomia szintek:** ReadOnly, Supervised (alapertelmezett), Full.
- **Sandboxing:** munkater izolalas, utvonal-atjaras blokkolas, parancs engedelyezesi listak, tiltott utvonalak, Landlock (Linux), Bubblewrap.
- **Sebessegkorlatozas:** max muveletek orankent, max koltseg naponta (konfiguralhato).
- **Jovahagyasi kapu:** interaktiv jovahagy kozepes/magas kockazatu mueveletekhez.
- **E-stop:** veszleallitasi kepesseg.
- **129+ biztonsagi teszt** automatizalt CI-ben.
### Muveletek + csomagolas
- Webes vezerlopult kozvetlenul a Gateway-bol kiszolgalva.
- Tunnel tamogatas: Cloudflare, Tailscale, ngrok, OpenVPN, egyedi parancs.
- Docker runtime adapter konterizalt vegrehajtashoz.
- CI/CD: beta (auto on push) → stable (manual dispatch) → Docker, crates.io, Scoop, AUR, Homebrew, tweet.
- Elore elkeszitett binarisok Linux (x86_64, aarch64, armv7), macOS (x86_64, aarch64), Windows (x86_64) rendszerekhez.
## Konfiguracio
Minimalis `~/.zeroclaw/config.toml`:
```toml
default_provider = "anthropic"
api_key = "sk-ant-..."
```
Teljes konfiguracios referencia: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md).
### Csatorna konfiguracio
**Telegram:**
```toml
[channels.telegram]
bot_token = "123456:ABC-DEF..."
```
**Discord:**
```toml
[channels.discord]
token = "your-bot-token"
```
**Slack:**
```toml
[channels.slack]
bot_token = "xoxb-..."
app_token = "xapp-..."
```
**WhatsApp:**
```toml
[channels.whatsapp]
enabled = true
```
**Matrix:**
```toml
[channels.matrix]
homeserver_url = "https://matrix.org"
username = "@bot:matrix.org"
password = "..."
```
**Signal:**
```toml
[channels.signal]
phone_number = "+1234567890"
```
### Tunnel konfiguracio
```toml
[tunnel]
kind = "cloudflare" # or "tailscale", "ngrok", "openvpn", "custom", "none"
```
Reszletek: [Csatorna referencia](docs/reference/api/channels-reference.md) · [Konfiguracios referencia](docs/reference/api/config-reference.md)
### Futtatokornyezet tamogatas (aktualis)
- **`native`** (alapertelmezett) — kozvetlen folyamat vegrehajtas, leggyorsabb ut, idealis megbizhato kornyezetekhez.
- **`docker`** — teljes kontener izolalas, ervenyesitett biztonsagi szabalyzatok, Docker szukseges.
Allitsd be a `runtime.kind = "docker"` erteket a szigoru sandboxinghoz vagy halozati izolaciohoz.
## Elofizetes hitelesites (OpenAI Codex / Claude Code / Gemini)
A ZeroClaw tamogatja az elofizetes-nativ hitelesitesi profilokat (tobb fiok, titkositva tarolva).
- Tarolo fajl: `~/.zeroclaw/auth-profiles.json`
- Titkositasi kulcs: `~/.zeroclaw/.secret_key`
- Profil azonosito formatum: `<provider>:<profile_name>` (pelda: `openai-codex:work`)
### Docker-rel
```bash
# OpenAI Codex OAuth (ChatGPT subscription)
zeroclaw auth login --provider openai-codex --device-code
# Gemini OAuth
zeroclaw auth login --provider gemini --profile default
# Anthropic setup-token
zeroclaw auth paste-token --provider anthropic --profile default --auth-kind authorization
# Check / refresh / switch profile
zeroclaw auth status
zeroclaw auth refresh --provider openai-codex --profile default
zeroclaw auth use --provider openai-codex --profile work
# Run the agent with subscription auth
zeroclaw agent --provider openai-codex -m "hello"
zeroclaw agent --provider anthropic -m "hello"
docker run -d \
--name zeroclaw \
-e ANTHROPIC_API_KEY=your_key \
-v zeroclaw-data:/app/data \
zeroclaw/zeroclaw:latest
```
## Agens munkater + kepessegek
---
Munkater gyoker: `~/.zeroclaw/workspace/` (konfiguralhato a config-on keresztul).
## Konfiguráció
Beinjektalt prompt fajlok:
- `IDENTITY.md` — agens szemelyiseg es szerep
- `USER.md` — felhasznaloi kontextus es prefernciak
- `MEMORY.md` — hosszu tavu tenyek es tanulsagok
- `AGENTS.md` — munkamenet konvenciok es inicializalasi szabalyok
- `SOUL.md` — alapveto identitas es mukodesi elvek
A ZeroClaw egy YAML konfigurációs fájlt használ. Alapértelmezés szerint a `config.yaml` fájlt keresi.
Kepessegek: `~/.zeroclaw/workspace/skills/<skill>/SKILL.md` vagy `SKILL.toml`.
```yaml
# Alapértelmezett szolgáltató
provider: anthropic
```bash
# List installed skills
zeroclaw skills list
# Szolgáltató konfiguráció
providers:
anthropic:
api_key: ${ANTHROPIC_API_KEY}
model: claude-3-5-sonnet-20241022
openai:
api_key: ${OPENAI_API_KEY}
model: gpt-4o
# Install from git
zeroclaw skills install https://github.com/user/my-skill.git
# Memória konfiguráció
memory:
backend: sqlite
path: data/memory.db
# Security audit before install
zeroclaw skills audit https://github.com/user/my-skill.git
# Remove a skill
zeroclaw skills remove my-skill
# Csatorna konfiguráció
channels:
telegram:
token: ${TELEGRAM_BOT_TOKEN}
```
## CLI parancsok
---
```bash
# Munkater kezeles
zeroclaw onboard # Vezerelt beallitasi varazslo
zeroclaw status # Daemon/agent allapot megjelenites
zeroclaw doctor # Rendszer diagnosztika futtatasa
## Dokumentáció
# Gateway + daemon
zeroclaw gateway # Gateway szerver inditasa (127.0.0.1:42617)
zeroclaw daemon # Teljes autonom futtatas inditasa
Részletes dokumentációért lásd:
# Agens
zeroclaw agent # Interaktiv csevegesi mod
zeroclaw agent -m "message" # Egyszeri uzenet mod
- [Dokumentációs Központ](docs/README.md)
- [Parancs Referencia](docs/commands-reference.md)
- [Szolgáltató Referencia](docs/providers-reference.md)
- [Csatorna Referencia](docs/channels-reference.md)
- [Konfigurációs Referencia](docs/config-reference.md)
# Szolgaltatas kezeles
zeroclaw service install # Telepites OS szolgaltataskent (launchd/systemd)
zeroclaw service start|stop|restart|status
---
# Csatornak
zeroclaw channel list # Konfiguralt csatornak listazasa
zeroclaw channel doctor # Csatorna egeszseg ellenorzes
zeroclaw channel bind-telegram 123456789
## Hozzájárulás
# Cron + utemezes
zeroclaw cron list # Utemezett feladatok listazasa
zeroclaw cron add "*/5 * * * *" --prompt "Check system health"
zeroclaw cron remove <id>
# Memoria
zeroclaw memory list # Memoriabejegyzesek listazasa
zeroclaw memory get <key> # Memoria lekerese
zeroclaw memory stats # Memoria statisztikak
# Hitelesitesi profilok
zeroclaw auth login --provider <name>
zeroclaw auth status
zeroclaw auth use --provider <name> --profile <profile>
# Hardver periferiak
zeroclaw hardware discover # Csatlakoztatott eszkozok keresese
zeroclaw peripheral list # Csatlakoztatott periferiak listazasa
zeroclaw peripheral flash # Firmware felirasa eszkozre
# Migracio
zeroclaw migrate openclaw --dry-run
zeroclaw migrate openclaw
# Shell kiegeszitesek
source <(zeroclaw completions bash)
zeroclaw completions zsh > ~/.zfunc/_zeroclaw
```
Teljes parancs referencia: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
<!-- markdownlint-disable MD001 MD024 -->
## Elofeltetelek
<details>
<summary><strong>Windows</strong></summary>
#### Szukseges
1. **Visual Studio Build Tools** (biztositja az MSVC linkert es a Windows SDK-t):
```powershell
winget install Microsoft.VisualStudio.2022.BuildTools
```
A telepites soran (vagy a Visual Studio Installer-en keresztul) valaszd a **"Desktop development with C++"** munkafolyamatot.
2. **Rust toolchain:**
```powershell
winget install Rustlang.Rustup
```
A telepites utan nyiss egy uj terminalt es futtasd a `rustup default stable` parancsot a stabil toolchain aktivalasahoz.
3. **Ellenorzes**, hogy mindketto mukodik:
```powershell
rustc --version
cargo --version
```
#### Opcionalis
- **Docker Desktop** — csak a [Docker sandboxed runtime](#futtatokornyezet-tamogatas-aktualis) hasznalatahoz szukseges (`runtime.kind = "docker"`). Telepites: `winget install Docker.DockerDesktop`.
</details>
<details>
<summary><strong>Linux / macOS</strong></summary>
#### Szukseges
1. **Epitesi alapeszkozok:**
- **Linux (Debian/Ubuntu):** `sudo apt install build-essential pkg-config`
- **Linux (Fedora/RHEL):** `sudo dnf group install development-tools && sudo dnf install pkg-config`
- **macOS:** Telepitsd az Xcode Command Line Tools-t: `xcode-select --install`
2. **Rust toolchain:**
```bash
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
```
Reszletekert lasd [rustup.rs](https://rustup.rs).
3. **Ellenorzes**, hogy mindketto mukodik:
```bash
rustc --version
cargo --version
```
#### Egyvonalas telepito
Vagy hagyd ki a fenti lepeseket es telepits mindent (rendszer fuggosegek, Rust, ZeroClaw) egyetlen paranccsal:
```bash
curl -LsSf https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/install.sh | bash
```
#### Forditasi eroforrasigeny
A forrasbol valo epites tobb eroforras igenyel, mint az eredmeny binaris futtatasa:
| Eroforras | Minimum | Ajanlott |
| -------------- | ------- | ----------- |
| **RAM + swap** | 2 GB | 4 GB+ |
| **Szabad lemez** | 6 GB | 10 GB+ |
Ha a gazdageped a minimum alatt van, hasznalj elore elkeszitett binarisokat:
```bash
./install.sh --prefer-prebuilt
```
Kizarolag binaris telepiteshez forras alternativa nelkul:
```bash
./install.sh --prebuilt-only
```
#### Opcionalis
- **Docker** — csak a [Docker sandboxed runtime](#futtatokornyezet-tamogatas-aktualis) hasznalatahoz szukseges (`runtime.kind = "docker"`). Telepites a csomagkezelodon keresztul vagy [docker.com](https://docs.docker.com/engine/install/).
> **Megjegyzes:** Az alapertelmezett `cargo build --release` `codegen-units=1` erteket hasznal a csucs forditasi terheles csokkenteseere. Gyorsabb epitesekhez eros gepeken hasznald a `cargo build --profile release-fast` parancsot.
</details>
<!-- markdownlint-enable MD001 MD024 -->
### Elore elkeszitett binarisok
Kiadas eszkozok az alabbi platformokra kerulnek kozetetelre:
- Linux: `x86_64`, `aarch64`, `armv7`
- macOS: `x86_64`, `aarch64`
- Windows: `x86_64`
Toltsd le a legujabb eszkozoket innen:
<https://github.com/zeroclaw-labs/zeroclaw/releases/latest>
## Dokumentacio
Hasznald ezeket, ha tuljutottal az onboarding folyamaton es melyebb referenciara van szukseged.
- Kezdd a [dokumentacios indexszel](docs/README.md) a navigaciohoz es a "mi hol talalhato" informaciohoz.
- Olvasd el az [architektura attekintest](docs/architecture.md) a teljes rendszermodellhez.
- Hasznald a [konfiguracios referenciat](docs/reference/api/config-reference.md), ha minden kulcsra es peldara szukseged van.
- Futtasd a Gateway-t a konyv szerint az [uzemeltetesi kezikonyvvel](docs/ops/operations-runbook.md).
- Kovesd a [ZeroClaw Onboard](#gyors-inditas-tldr) szolgaltatast a vezerelt beallitashoz.
- Hibakeress a gyakori problemakat a [hibaelharitasi utmutatoval](docs/ops/troubleshooting.md).
- Tekintsd at a [biztonsagi utmutatast](docs/security/README.md) mielott barmit is kiteszel.
### Referencia dokumentaciok
- Dokumentacios kozpont: [docs/README.md](docs/README.md)
- Egysegesitett tartalomjegyzek: [docs/SUMMARY.md](docs/SUMMARY.md)
- Parancs referencia: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
- Konfiguracios referencia: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md)
- Szolgaltatoi referencia: [docs/reference/api/providers-reference.md](docs/reference/api/providers-reference.md)
- Csatorna referencia: [docs/reference/api/channels-reference.md](docs/reference/api/channels-reference.md)
- Uzemeltetesi kezikonyv: [docs/ops/operations-runbook.md](docs/ops/operations-runbook.md)
- Hibaelharitas: [docs/ops/troubleshooting.md](docs/ops/troubleshooting.md)
### Egyuttmukodesi dokumentaciok
- Hozzajarulasi utmutato: [CONTRIBUTING.md](CONTRIBUTING.md)
- PR munkafolyamat szabalyzat: [docs/contributing/pr-workflow.md](docs/contributing/pr-workflow.md)
- CI munkafolyamat utmutato: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- Biraloi kezikonyv: [docs/contributing/reviewer-playbook.md](docs/contributing/reviewer-playbook.md)
- Biztonsagi kozzeteeteli szabalyzat: [SECURITY.md](SECURITY.md)
- Dokumentacios sablon: [docs/contributing/doc-template.md](docs/contributing/doc-template.md)
### Telepites + muveletek
- Halozati telepitesi utmutato: [docs/ops/network-deployment.md](docs/ops/network-deployment.md)
- Proxy agens kezikonyv: [docs/ops/proxy-agent-playbook.md](docs/ops/proxy-agent-playbook.md)
- Hardver utmutatok: [docs/hardware/README.md](docs/hardware/README.md)
## Smooth Crab 🦀
A ZeroClaw a smooth crab 🦀 szamara keszult, egy gyors es hatekony MI asszisztens. Epitette Argenis De La Rosa es a kozosseg.
- [zeroclawlabs.ai](https://zeroclawlabs.ai)
- [@zeroclawlabs](https://x.com/zeroclawlabs)
## Tamogasd a ZeroClaw-t
Ha a ZeroClaw segiti a munkadat es tamogatni szeretned a folyamatos fejlesztest, itt adomanyozhatsz:
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=for-the-badge&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
### 🙏 Kulonos koszonet
Szivbol jovo koszonet a kozossegeknek es intezmenyeknek, amelyek inspiraljak es taplaljak ezt a nyilt forrasu munkat:
- **Harvard University** — az intellektualis kivancsiság apolasaert es a lehetosegek hatarainak tolásáert.
- **MIT** — a nyilt tudas, nyilt forras es azon hit bajnokakent, hogy a technologianak mindenki szamara elerheto kell lennie.
- **Sundai Club** — a kozossegert, az energiaert es a szuntelen torekveseert, hogy fontos dolgokat epitsenek.
- **A Vilag es Azon Tul** 🌍✨ — minden hozzajarulonak, almodonak es epitonek, aki a nyilt forrast a jo erdekeben mukodo erove teszi. Ez neked szol.
Nyiltan epitunk, mert a legjobb otletek mindenhonnan jonnek. Ha ezt olvasod, a resze vagy. Udvozlunk. 🦀❤️
## Hozzajarulas
Uj vagy a ZeroClaw-ban? Keresd a [`good first issue`](https://github.com/zeroclaw-labs/zeroclaw/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) cimkevel ellatott issue-kat — lasd a [Hozzajarulasi utmutatot](CONTRIBUTING.md#first-time-contributors) a kezdeshez. AI/vibe-coded PR-ok szivesen latottak! 🤖
Lasd [CONTRIBUTING.md](CONTRIBUTING.md) es [CLA.md](docs/contributing/cla.md). Implementalj egy trait-et, kuuldj be egy PR-t:
- CI munkafolyamat utmutato: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- Uj `Provider``src/providers/`
- Uj `Channel``src/channels/`
- Uj `Observer``src/observability/`
- Uj `Tool``src/tools/`
- Uj `Memory``src/memory/`
- Uj `Tunnel``src/tunnel/`
- Uj `Peripheral``src/peripherals/`
- Uj `Skill``~/.zeroclaw/workspace/skills/<name>/`
<!-- BEGIN:RECENT_CONTRIBUTORS -->
<!-- END:RECENT_CONTRIBUTORS -->
## ⚠️ Hivatalos tarolo es megszemelyesitesi figyelmeztetes
**Ez az egyetlen hivatalos ZeroClaw tarolo:**
> https://github.com/zeroclaw-labs/zeroclaw
Barmely mas tarolo, szervezet, domain vagy csomag, amely azt allitja, hogy "ZeroClaw" vagy kapcsolatot sugall a ZeroClaw Labs-szal, **jogosulatlan es nem all kapcsolatban ezzel a projekttel**. Az ismert jogosulatlan forkok a [TRADEMARK.md](docs/maintainers/trademark.md) fajlban lesznek felsorolva.
Ha megszemelyesitessel vagy vedjeggyel valo visszaelessel talalkozol, kerlek [nyiss egy issue-t](https://github.com/zeroclaw-labs/zeroclaw/issues).
A hozzájárulások várják! Kérjük, olvassa el a [Hozzájárulási Útmutatót](CONTRIBUTING.md).
---
## Licenc
A ZeroClaw kettos licenccel rendelkezik a maximalis nyitottsag es hozzajaruloi vedelem erdekeben:
Ez a projekt kettős licencelt:
| Licenc | Felhasznalasi eset |
|---|---|
| [MIT](LICENSE-MIT) | Nyilt forras, kutatas, akademiai, szemelyes haszanalat |
| [Apache 2.0](LICENSE-APACHE) | Szabadalmi vedelem, intezmenyi, kereskedelmi telepites |
- MIT License
- Apache License, 2.0 verzió
Barmely licencet valaszthatod. **A hozzajarulok automatikusan mindketto alatt jogot biztositanak** — lasd [CLA.md](docs/contributing/cla.md) a teljes hozzajarulasi megallapodasert.
### Vedjegy
A **ZeroClaw** nev es logo a ZeroClaw Labs vedjegyei. Ez a licenc nem ad engedelyt arra, hogy tamogatast vagy kapcsolatot sugalljanak. Lasd [TRADEMARK.md](docs/maintainers/trademark.md) a megengedett es tiltott hasznalati modokert.
### Hozzajaruloi vedelmek
- **Megtartod a szerzoi jogot** a hozzajarulasaidon
- **Szabadalmi engedely** (Apache 2.0) vedi meg mas hozzajarulok szabadalmi igenyeitol
- A hozzajarulasaid **veglegesen attribulaltak** a commit tortenelben es a [NOTICE](NOTICE) fajlban
- Nem kerulnek at vedjegyjogok a hozzajarulassal
Részletekért lásd a [LICENSE-APACHE](LICENSE-APACHE) és [LICENSE-MIT](LICENSE-MIT) fájlokat.
---
**ZeroClaw** — Nulla terheles. Nulla kompromisszum. Telepites barhova. Csere barmire. 🦀
## Közösség
## Hozzajarulok
- [Telegram](https://t.me/zeroclawlabs)
- [Facebook Group](https://www.facebook.com/groups/zeroclaw)
- [WeChat Group](https://zeroclawlabs.cn/group.jpg)
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors">
<img src="https://contrib.rocks/image?repo=zeroclaw-labs/zeroclaw" alt="ZeroClaw contributors" />
</a>
---
Ez a lista a GitHub hozzajaruloi grafikonjabol keszul es automatikusan frissul.
## Szponzorok
## Csillag tortenelem
Ha a ZeroClaw hasznos az Ön számára, kérjük, fontolja meg, hogy vesz nekünk egy kávét:
<p align="center">
<a href="https://www.star-history.com/#zeroclaw-labs/zeroclaw&type=date&legend=top-left">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&theme=dark&legend=top-left" />
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
</picture>
</a>
</p>
[![Buy Me a Coffee](https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee)](https://buymeacoffee.com/argenistherose)
<!-- BEGIN:RECENT_CONTRIBUTORS -->
### 🌟 Recent Contributors (v0.3.1)
3 contributors shipped features, fixes, and improvements in this release cycle:
- **Argenis**
- **argenis de la rosa**
- **Claude Opus 4.6**
Thank you to everyone who opened issues, reviewed PRs, translated docs, and helped test. Every contribution matters. 🦀
<!-- END:RECENT_CONTRIBUTORS -->

View File

@ -1,29 +1,23 @@
<p align="center">
<img src="https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/docs/assets/zeroclaw-banner.png" alt="ZeroClaw" width="600" />
<img src="zeroclaw.png" alt="ZeroClaw" width="200" />
</p>
<h1 align="center">🦀 ZeroClaw — Asisten AI Pribadi</h1>
<h1 align="center">ZeroClaw 🦀</h1>
<p align="center">
<strong>Nol overhead. Nol kompromi. 100% Rust. 100% Agnostik.</strong><br>
⚡️ <strong>Berjalan di perangkat keras $10 dengan RAM <5MB: Itu 99% lebih hemat memori dari OpenClaw dan 98% lebih murah dari Mac mini!</strong>
⚡️ <strong>Jalan di perangkat $10 dengan <5MB RAM: Itu 99% lebih sedikit memori dari OpenClaw dan 98% lebih murah dari Mac mini!</strong>
</p>
<p align="center">
<a href="LICENSE-APACHE"><img src="https://img.shields.io/badge/license-MIT%20OR%20Apache%202.0-blue.svg" alt="License: MIT OR Apache-2.0" /></a>
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors"><img src="https://img.shields.io/github/contributors/zeroclaw-labs/zeroclaw?color=green" alt="Contributors" /></a>
<a href="NOTICE"><img src="https://img.shields.io/badge/contributors-27+-green.svg" alt="Contributors" /></a>
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
<a href="https://x.com/zeroclawlabs?s=21"><img src="https://img.shields.io/badge/X-%40zeroclawlabs-000000?style=flat&logo=x&logoColor=white" alt="X: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclawlabs"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
<a href="https://discord.com/invite/wDshRVqRjx"><img src="https://img.shields.io/badge/Discord-Join-5865F2?style=flat&logo=discord&logoColor=white" alt="Discord" /></a>
<a href="https://www.instagram.com/therealzeroclaw"><img src="https://img.shields.io/badge/Instagram-%40therealzeroclaw-E4405F?style=flat&logo=instagram&logoColor=white" alt="Instagram: @therealzeroclaw" /></a>
<a href="https://www.tiktok.com/@zeroclawlabs"><img src="https://img.shields.io/badge/TikTok-%40zeroclawlabs-000000?style=flat&logo=tiktok&logoColor=white" alt="TikTok: @zeroclawlabs" /></a>
<a href="https://www.rednote.com/user/profile/69b735e6000000002603927e"><img src="https://img.shields.io/badge/RedNote-Official-FF2442?style=flat" alt="RedNote" /></a>
<a href="https://www.reddit.com/r/zeroclawlabs/"><img src="https://img.shields.io/badge/Reddit-r%2Fzeroclawlabs-FF4500?style=flat&logo=reddit&logoColor=white" alt="Reddit: r/zeroclawlabs" /></a>
</p>
<p align="center">
Dibangun oleh mahasiswa dan anggota komunitas Harvard, MIT, dan Sundai.Club.
<a href="https://zeroclawlabs.cn/group.jpg"><img src="https://img.shields.io/badge/WeChat-Group-B7D7A8?logo=wechat&logoColor=white" alt="WeChat Group" /></a>
<a href="https://www.xiaohongshu.com/user/profile/67cbfc43000000000d008307?xsec_token=AB73VnYnGNx5y36EtnnZfGmAmS-6Wzv8WMuGpfwfkg6Yc%3D&xsec_source=pc_search"><img src="https://img.shields.io/badge/Xiaohongshu-Official-FF2442?style=flat" alt="Xiaohongshu: Official" /></a>
<a href="https://t.me/zeroclawlabs"><img src="https://img.shields.io/badge/Telegram-%40zeroclawlabs-26A5E4?style=flat&logo=telegram&logoColor=white" alt="Telegram: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclaw"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
</p>
<p align="center">
@ -61,695 +55,149 @@ Dibangun oleh mahasiswa dan anggota komunitas Harvard, MIT, dan Sundai.Club.
<a href="README.nb.md">🇳🇴 Norsk</a>
</p>
ZeroClaw adalah asisten AI pribadi yang Anda jalankan di perangkat sendiri. Ia menjawab Anda melalui saluran yang sudah Anda gunakan (WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, dan lainnya). Ia memiliki dasbor web untuk kontrol real-time dan dapat terhubung ke periferal perangkat keras (ESP32, STM32, Arduino, Raspberry Pi). Gateway hanyalah bidang kendali — produknya adalah asisten.
Jika Anda menginginkan asisten pribadi, pengguna tunggal, yang terasa lokal, cepat, dan selalu aktif, inilah solusinya.
<p align="center">
<a href="https://zeroclawlabs.ai">Situs Web</a> ·
<a href="docs/README.md">Dokumentasi</a> ·
<a href="docs/architecture.md">Arsitektur</a> ·
<a href="#mulai-cepat">Memulai</a> ·
<a href="#migrasi-dari-openclaw">Migrasi dari OpenClaw</a> ·
<a href="docs/ops/troubleshooting.md">Pemecahan Masalah</a> ·
<a href="https://discord.com/invite/wDshRVqRjx">Discord</a>
</p>
> **Pengaturan yang disarankan:** jalankan `zeroclaw onboard` di terminal Anda. ZeroClaw Onboard memandu Anda langkah demi langkah dalam menyiapkan gateway, workspace, saluran, dan provider. Ini adalah jalur pengaturan yang disarankan dan berfungsi di macOS, Linux, dan Windows (melalui WSL2). Instalasi baru? Mulai di sini: [Memulai](#mulai-cepat)
### Autentikasi Berlangganan (OAuth)
- **OpenAI Codex** (langganan ChatGPT)
- **Gemini** (Google OAuth)
- **Anthropic** (kunci API atau token autentikasi)
Catatan model: meskipun banyak provider/model didukung, untuk pengalaman terbaik gunakan model generasi terbaru terkuat yang tersedia untuk Anda. Lihat [Onboarding](#mulai-cepat).
Konfigurasi model + CLI: [Referensi Provider](docs/reference/api/providers-reference.md)
Rotasi profil autentikasi (OAuth vs kunci API) + failover: [Failover Model](docs/reference/api/providers-reference.md)
## Instal (disarankan)
Runtime: Rust stable toolchain. Biner tunggal, tanpa dependensi runtime.
### Homebrew (macOS/Linuxbrew)
```bash
brew install zeroclaw
```
### Bootstrap sekali klik
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./install.sh
```
`zeroclaw onboard` berjalan otomatis setelah instalasi untuk mengonfigurasi workspace dan provider Anda.
## Mulai cepat (TL;DR)
Panduan lengkap pemula (autentikasi, pairing, saluran): [Memulai](docs/setup-guides/one-click-bootstrap.md)
```bash
# Instal + onboard
./install.sh --api-key "sk-..." --provider openrouter
# Mulai gateway (server webhook + dasbor web)
zeroclaw gateway # default: 127.0.0.1:42617
zeroclaw gateway --port 0 # port acak (keamanan ditingkatkan)
# Bicara ke asisten
zeroclaw agent -m "Hello, ZeroClaw!"
# Mode interaktif
zeroclaw agent
# Mulai runtime otonom penuh (gateway + saluran + cron + hands)
zeroclaw daemon
# Periksa status
zeroclaw status
# Jalankan diagnostik
zeroclaw doctor
```
Memperbarui? Jalankan `zeroclaw doctor` setelah pembaruan.
### Dari sumber (pengembangan)
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
cargo build --release --locked
cargo install --path . --force --locked
zeroclaw onboard
```
> **Alternatif dev (tanpa instalasi global):** awali perintah dengan `cargo run --release --` (contoh: `cargo run --release -- status`).
## Migrasi dari OpenClaw
ZeroClaw dapat mengimpor workspace, memori, dan konfigurasi OpenClaw Anda:
```bash
# Pratinjau apa yang akan dimigrasikan (aman, hanya-baca)
zeroclaw migrate openclaw --dry-run
# Jalankan migrasi
zeroclaw migrate openclaw
```
Ini memigrasikan entri memori, file workspace, dan konfigurasi Anda dari `~/.openclaw/` ke `~/.zeroclaw/`. Konfigurasi dikonversi dari JSON ke TOML secara otomatis.
## Default keamanan (akses DM)
ZeroClaw terhubung ke permukaan pesan nyata. Perlakukan DM masuk sebagai input tidak tepercaya.
Panduan keamanan lengkap: [SECURITY.md](SECURITY.md)
Perilaku default di semua saluran:
- **Pairing DM** (default): pengirim yang tidak dikenal menerima kode pairing singkat dan bot tidak memproses pesan mereka.
- Setujui dengan: `zeroclaw pairing approve <channel> <code>` (kemudian pengirim ditambahkan ke daftar izin lokal).
- DM masuk publik memerlukan opt-in eksplisit di `config.toml`.
- Jalankan `zeroclaw doctor` untuk menemukan kebijakan DM yang berisiko atau salah konfigurasi.
**Level otonomi:**
| Level | Perilaku |
|-------|----------|
| `ReadOnly` | Agen dapat mengamati tetapi tidak bertindak |
| `Supervised` (default) | Agen bertindak dengan persetujuan untuk operasi risiko menengah/tinggi |
| `Full` | Agen bertindak secara otonom dalam batas kebijakan |
**Lapisan sandboxing:** isolasi workspace, pemblokiran traversal jalur, daftar izin perintah, jalur terlarang (`/etc`, `/root`, `~/.ssh`), pembatasan laju (maksimum tindakan/jam, batas biaya/hari).
---
<!-- BEGIN:WHATS_NEW -->
### 🚀 What's New in v0.3.1 (March 2026)
| Area | Highlights |
|---|---|
| ci | add Termux (aarch64-linux-android) release target |
<!-- END:WHATS_NEW -->
### 📢 Pengumuman
## Apa itu ZeroClaw?
Gunakan papan ini untuk pemberitahuan penting (perubahan yang merusak, saran keamanan, jendela pemeliharaan, dan pemblokir rilis).
ZeroClaw adalah infrastruktur asisten AI yang ringan, dapat diubah, dan dapat diperluas yang dibangun dengan Rust. Ini menghubungkan berbagai penyedia LLM (Anthropic, OpenAI, Google, Ollama, dll.) melalui antarmuka terpadu dan mendukung banyak saluran (Telegram, Matrix, CLI, dll.).
| Tanggal (UTC) | Level | Pemberitahuan | Tindakan |
| ---------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 2026-02-19 | _Kritis_ | Kami **tidak berafiliasi** dengan `openagen/zeroclaw`, `zeroclaw.org` atau `zeroclaw.net`. Domain `zeroclaw.org` dan `zeroclaw.net` saat ini mengarah ke fork `openagen/zeroclaw`, dan domain/repositori tersebut menyamar sebagai situs web/proyek resmi kami. | Jangan percaya informasi, biner, penggalangan dana, atau pengumuman dari sumber tersebut. Gunakan hanya [repositori ini](https://github.com/zeroclaw-labs/zeroclaw) dan akun sosial terverifikasi kami. |
| 2026-02-21 | _Penting_ | Situs web resmi kami sekarang aktif: [zeroclawlabs.ai](https://zeroclawlabs.ai). Terima kasih atas kesabaran Anda selama kami mempersiapkan peluncuran. Kami masih melihat upaya peniruan, jadi **jangan** bergabung dengan aktivitas investasi atau penggalangan dana yang mengklaim nama ZeroClaw kecuali dipublikasikan melalui saluran resmi kami. | Gunakan [repositori ini](https://github.com/zeroclaw-labs/zeroclaw) sebagai satu-satunya sumber kebenaran. Ikuti [X (@zeroclawlabs)](https://x.com/zeroclawlabs?s=21), [Facebook (Group)](https://www.facebook.com/groups/zeroclawlabs), dan [Reddit (r/zeroclawlabs)](https://www.reddit.com/r/zeroclawlabs/) untuk pembaruan resmi. |
| 2026-02-19 | _Penting_ | Anthropic memperbarui ketentuan Autentikasi dan Penggunaan Kredensial pada 2026-02-19. Token OAuth Claude Code (Free, Pro, Max) ditujukan secara eksklusif untuk Claude Code dan Claude.ai; menggunakan token OAuth dari Claude Free/Pro/Max di produk, alat, atau layanan lain (termasuk Agent SDK) tidak diizinkan dan dapat melanggar Ketentuan Layanan Konsumen. | Harap sementara hindari integrasi OAuth Claude Code untuk mencegah potensi kerugian. Klausul asli: [Authentication and Credential Use](https://code.claude.com/docs/en/legal-and-compliance#authentication-and-credential-use). |
### Fitur Utama
## Sorotan
- **🦀 Ditulis dalam Rust**: Kinerja tinggi, keamanan memori, dan abstraksi tanpa biaya
- **🔌 Agnostik penyedia**: Mendukung OpenAI, Anthropic, Google Gemini, Ollama, dan lainnya
- **📱 Multi-saluran**: Telegram, Matrix (dengan E2EE), CLI, dan lainnya
- **🧠 Memori yang dapat dipasang**: Backend SQLite dan Markdown
- **🛠️ Alat yang dapat diperluas**: Tambahkan alat kustom dengan mudah
- **🔒 Keamanan pertama**: Proxy terbalik, desain yang mengutamakan privasi
- **Runtime Ringan secara Default** — alur kerja CLI dan status umum berjalan dalam amplop memori beberapa megabyte pada build rilis.
- **Deployment Hemat Biaya** — dirancang untuk board $10 dan instans cloud kecil, tanpa dependensi runtime berat.
- **Cold Start Cepat** — runtime Rust biner tunggal menjaga startup perintah dan daemon hampir instan.
- **Arsitektur Portabel** — satu biner di ARM, x86, dan RISC-V dengan provider/saluran/alat yang dapat ditukar.
- **Gateway Lokal-Pertama** — bidang kendali tunggal untuk sesi, saluran, alat, cron, SOP, dan peristiwa.
- **Inbox multi-saluran** — WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WebSocket, dan lainnya.
- **Orkestrasi multi-agen (Hands)** — swarm agen otonom yang berjalan sesuai jadwal dan semakin pintar seiring waktu.
- **Standard Operating Procedures (SOP)** — otomasi alur kerja berbasis peristiwa dengan MQTT, webhook, cron, dan pemicu periferal.
- **Dasbor Web** — UI web React 19 + Vite dengan obrolan real-time, browser memori, editor konfigurasi, manajer cron, dan inspektor alat.
- **Periferal perangkat keras** — ESP32, STM32 Nucleo, Arduino, Raspberry Pi GPIO melalui trait `Peripheral`.
- **Alat kelas satu** — shell, file I/O, browser, git, web fetch/search, MCP, Jira, Notion, Google Workspace, dan 70+ lainnya.
- **Hook siklus hidup** — intersep dan modifikasi panggilan LLM, eksekusi alat, dan pesan di setiap tahap.
- **Platform skill** — skill bawaan, komunitas, dan workspace dengan audit keamanan.
- **Dukungan tunnel** — Cloudflare, Tailscale, ngrok, OpenVPN, dan tunnel kustom untuk akses jarak jauh.
---
### Mengapa tim memilih ZeroClaw
## Mulai Cepat
- **Ringan secara default:** biner Rust kecil, startup cepat, jejak memori rendah.
- **Aman secara desain:** pairing, sandboxing ketat, daftar izin eksplisit, pelingkupan workspace.
- **Sepenuhnya dapat ditukar:** sistem inti adalah trait (provider, saluran, alat, memori, tunnel).
- **Tanpa lock-in:** dukungan provider kompatibel OpenAI + endpoint kustom pluggable.
### Persyaratan
## Cuplikan Benchmark (ZeroClaw vs OpenClaw, Dapat Direproduksi)
- Rust 1.70+
- Kunci API penyedia LLM (Anthropic, OpenAI, dll.)
Benchmark cepat mesin lokal (macOS arm64, Feb 2026) dinormalisasi untuk perangkat keras edge 0.8GHz.
| | OpenClaw | NanoBot | PicoClaw | ZeroClaw 🦀 |
| ------------------------- | ------------- | -------------- | --------------- | -------------------- |
| **Bahasa** | TypeScript | Python | Go | **Rust** |
| **RAM** | > 1GB | > 100MB | < 10MB | **< 5MB** |
| **Startup (inti 0.8GHz)** | > 500s | > 30s | < 1s | **< 10ms** |
| **Ukuran Biner** | ~28MB (dist) | N/A (Scripts) | ~8MB | **~8.8 MB** |
| **Biaya** | Mac Mini $599 | Linux SBC ~$50 | Linux Board $10 | **Perangkat keras apa pun $10** |
> Catatan: Hasil ZeroClaw diukur pada build rilis menggunakan `/usr/bin/time -l`. OpenClaw memerlukan runtime Node.js (biasanya ~390MB overhead memori tambahan), sedangkan NanoBot memerlukan runtime Python. PicoClaw dan ZeroClaw adalah biner statis. Angka RAM di atas adalah memori runtime; kebutuhan kompilasi saat build lebih tinggi.
<p align="center">
<img src="docs/assets/zeroclaw-comparison.jpeg" alt="ZeroClaw vs OpenClaw Comparison" width="800" />
</p>
### Pengukuran lokal yang dapat direproduksi
### Instalasi
```bash
cargo build --release
ls -lh target/release/zeroclaw
# Klon repositori
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
/usr/bin/time -l target/release/zeroclaw --help
/usr/bin/time -l target/release/zeroclaw status
# Bangun
cargo build --release
# Jalankan
cargo run --release
```
## Semua yang telah kami bangun sejauh ini
### Dengan Docker
### Platform inti
- Bidang kendali HTTP/WS/SSE Gateway dengan sesi, presence, konfigurasi, cron, webhook, dasbor web, dan pairing.
- Permukaan CLI: `gateway`, `agent`, `onboard`, `doctor`, `status`, `service`, `migrate`, `auth`, `cron`, `channel`, `skills`.
- Loop orkestrasi agen dengan dispatch alat, konstruksi prompt, klasifikasi pesan, dan pemuatan memori.
- Model sesi dengan penegakan kebijakan keamanan, level otonomi, dan gating persetujuan.
- Wrapper provider resilient dengan failover, retry, dan routing model di 20+ backend LLM.
### Saluran
Saluran: WhatsApp (native), Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, DingTalk, Lark, Mattermost, Nextcloud Talk, Nostr, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WATI, Mochat, Linq, Notion, WebSocket, ClawdTalk.
Feature-gated: Matrix (`channel-matrix`), Lark (`channel-lark`), Nostr (`channel-nostr`).
### Dasbor web
Dasbor web React 19 + Vite 6 + Tailwind CSS 4 yang disajikan langsung dari Gateway:
- **Dashboard** — ikhtisar sistem, status kesehatan, uptime, pelacakan biaya
- **Agent Chat** — obrolan interaktif dengan agen
- **Memory** — jelajahi dan kelola entri memori
- **Config** — lihat dan edit konfigurasi
- **Cron** — kelola tugas terjadwal
- **Tools** — jelajahi alat yang tersedia
- **Logs** — lihat log aktivitas agen
- **Cost** — penggunaan token dan pelacakan biaya
- **Doctor** — diagnostik kesehatan sistem
- **Integrations** — status integrasi dan pengaturan
- **Pairing** — manajemen pairing perangkat
### Target firmware
| Target | Platform | Tujuan |
|--------|----------|--------|
| ESP32 | Espressif ESP32 | Agen periferal nirkabel |
| ESP32-UI | ESP32 + Display | Agen dengan antarmuka visual |
| STM32 Nucleo | STM32 (ARM Cortex-M) | Periferal industri |
| Arduino | Arduino | Jembatan sensor/aktuator dasar |
| Uno Q Bridge | Arduino Uno | Jembatan serial ke agen |
### Alat + otomasi
- **Inti:** shell, file read/write/edit, operasi git, glob search, content search
- **Web:** browser control, web fetch, web search, screenshot, image info, PDF read
- **Integrasi:** Jira, Notion, Google Workspace, Microsoft 365, LinkedIn, Composio, Pushover
- **MCP:** Model Context Protocol tool wrapper + deferred tool sets
- **Penjadwalan:** cron add/remove/update/run, schedule tool
- **Memori:** recall, store, forget, knowledge, project intel
- **Lanjutan:** delegate (agen-ke-agen), swarm, model switch/routing, security ops, cloud ops
- **Perangkat keras:** board info, memory map, memory read (feature-gated)
### Runtime + keamanan
- **Level otonomi:** ReadOnly, Supervised (default), Full.
- **Sandboxing:** isolasi workspace, pemblokiran traversal jalur, daftar izin perintah, jalur terlarang, Landlock (Linux), Bubblewrap.
- **Pembatasan laju:** maksimum tindakan per jam, maksimum biaya per hari (dapat dikonfigurasi).
- **Gating persetujuan:** persetujuan interaktif untuk operasi risiko menengah/tinggi.
- **E-stop:** kemampuan shutdown darurat.
- **129+ tes keamanan** dalam CI otomatis.
### Ops + pengemasan
- Dasbor web disajikan langsung dari Gateway.
- Dukungan tunnel: Cloudflare, Tailscale, ngrok, OpenVPN, perintah kustom.
- Adapter runtime Docker untuk eksekusi terkontainerisasi.
- CI/CD: beta (otomatis saat push) → stable (dispatch manual) → Docker, crates.io, Scoop, AUR, Homebrew, tweet.
- Biner pre-built untuk Linux (x86_64, aarch64, armv7), macOS (x86_64, aarch64), Windows (x86_64).
```bash
docker run -d \
--name zeroclaw \
-e ANTHROPIC_API_KEY=your_key \
-v zeroclaw-data:/app/data \
zeroclaw/zeroclaw:latest
```
---
## Konfigurasi
Minimal `~/.zeroclaw/config.toml`:
ZeroClaw menggunakan file konfigurasi YAML. Secara default, ini mencari `config.yaml`.
```toml
default_provider = "anthropic"
api_key = "sk-ant-..."
```yaml
# Penyedia default
provider: anthropic
# Konfigurasi penyedia
providers:
anthropic:
api_key: ${ANTHROPIC_API_KEY}
model: claude-3-5-sonnet-20241022
openai:
api_key: ${OPENAI_API_KEY}
model: gpt-4o
# Konfigurasi memori
memory:
backend: sqlite
path: data/memory.db
# Konfigurasi saluran
channels:
telegram:
token: ${TELEGRAM_BOT_TOKEN}
```
Referensi konfigurasi lengkap: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md).
### Konfigurasi saluran
**Telegram:**
```toml
[channels.telegram]
bot_token = "123456:ABC-DEF..."
```
**Discord:**
```toml
[channels.discord]
token = "your-bot-token"
```
**Slack:**
```toml
[channels.slack]
bot_token = "xoxb-..."
app_token = "xapp-..."
```
**WhatsApp:**
```toml
[channels.whatsapp]
enabled = true
```
**Matrix:**
```toml
[channels.matrix]
homeserver_url = "https://matrix.org"
username = "@bot:matrix.org"
password = "..."
```
**Signal:**
```toml
[channels.signal]
phone_number = "+1234567890"
```
### Konfigurasi tunnel
```toml
[tunnel]
kind = "cloudflare" # atau "tailscale", "ngrok", "openvpn", "custom", "none"
```
Detail: [Referensi Saluran](docs/reference/api/channels-reference.md) · [Referensi Konfigurasi](docs/reference/api/config-reference.md)
### Dukungan runtime (saat ini)
- **`native`** (default) — eksekusi proses langsung, jalur tercepat, ideal untuk lingkungan tepercaya.
- **`docker`** — isolasi kontainer penuh, kebijakan keamanan ditegakkan, memerlukan Docker.
Atur `runtime.kind = "docker"` untuk sandboxing ketat atau isolasi jaringan.
## Autentikasi Berlangganan (OpenAI Codex / Claude Code / Gemini)
ZeroClaw mendukung profil autentikasi native berlangganan (multi-akun, terenkripsi saat istirahat).
- File penyimpanan: `~/.zeroclaw/auth-profiles.json`
- Kunci enkripsi: `~/.zeroclaw/.secret_key`
- Format id profil: `<provider>:<profile_name>` (contoh: `openai-codex:work`)
```bash
# OpenAI Codex OAuth (langganan ChatGPT)
zeroclaw auth login --provider openai-codex --device-code
# Gemini OAuth
zeroclaw auth login --provider gemini --profile default
# Anthropic setup-token
zeroclaw auth paste-token --provider anthropic --profile default --auth-kind authorization
# Periksa / refresh / ganti profil
zeroclaw auth status
zeroclaw auth refresh --provider openai-codex --profile default
zeroclaw auth use --provider openai-codex --profile work
# Jalankan agen dengan auth berlangganan
zeroclaw agent --provider openai-codex -m "hello"
zeroclaw agent --provider anthropic -m "hello"
```
## Workspace agen + skill
Root workspace: `~/.zeroclaw/workspace/` (dapat dikonfigurasi melalui config).
File prompt yang diinjeksi:
- `IDENTITY.md` — kepribadian dan peran agen
- `USER.md` — konteks dan preferensi pengguna
- `MEMORY.md` — fakta dan pelajaran jangka panjang
- `AGENTS.md` — konvensi sesi dan aturan inisialisasi
- `SOUL.md` — identitas inti dan prinsip operasi
Skill: `~/.zeroclaw/workspace/skills/<skill>/SKILL.md` atau `SKILL.toml`.
```bash
# Daftar skill yang terinstal
zeroclaw skills list
# Instal dari git
zeroclaw skills install https://github.com/user/my-skill.git
# Audit keamanan sebelum instalasi
zeroclaw skills audit https://github.com/user/my-skill.git
# Hapus skill
zeroclaw skills remove my-skill
```
## Perintah CLI
```bash
# Manajemen workspace
zeroclaw onboard # Wizard pengaturan terpandu
zeroclaw status # Tampilkan status daemon/agen
zeroclaw doctor # Jalankan diagnostik sistem
# Gateway + daemon
zeroclaw gateway # Mulai server gateway (127.0.0.1:42617)
zeroclaw daemon # Mulai runtime otonom penuh
# Agen
zeroclaw agent # Mode obrolan interaktif
zeroclaw agent -m "message" # Mode pesan tunggal
# Manajemen layanan
zeroclaw service install # Instal sebagai layanan OS (launchd/systemd)
zeroclaw service start|stop|restart|status
# Saluran
zeroclaw channel list # Daftar saluran yang dikonfigurasi
zeroclaw channel doctor # Periksa kesehatan saluran
zeroclaw channel bind-telegram 123456789
# Cron + penjadwalan
zeroclaw cron list # Daftar tugas terjadwal
zeroclaw cron add "*/5 * * * *" --prompt "Check system health"
zeroclaw cron remove <id>
# Memori
zeroclaw memory list # Daftar entri memori
zeroclaw memory get <key> # Ambil memori
zeroclaw memory stats # Statistik memori
# Profil autentikasi
zeroclaw auth login --provider <name>
zeroclaw auth status
zeroclaw auth use --provider <name> --profile <profile>
# Periferal perangkat keras
zeroclaw hardware discover # Pindai perangkat yang terhubung
zeroclaw peripheral list # Daftar periferal yang terhubung
zeroclaw peripheral flash # Flash firmware ke perangkat
# Migrasi
zeroclaw migrate openclaw --dry-run
zeroclaw migrate openclaw
# Pelengkapan shell
source <(zeroclaw completions bash)
zeroclaw completions zsh > ~/.zfunc/_zeroclaw
```
Referensi perintah lengkap: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
<!-- markdownlint-disable MD001 MD024 -->
## Prasyarat
<details>
<summary><strong>Windows</strong></summary>
#### Diperlukan
1. **Visual Studio Build Tools** (menyediakan linker MSVC dan Windows SDK):
```powershell
winget install Microsoft.VisualStudio.2022.BuildTools
```
Selama instalasi (atau melalui Visual Studio Installer), pilih beban kerja **"Desktop development with C++"**.
2. **Rust toolchain:**
```powershell
winget install Rustlang.Rustup
```
Setelah instalasi, buka terminal baru dan jalankan `rustup default stable` untuk memastikan toolchain stabil aktif.
3. **Verifikasi** keduanya berfungsi:
```powershell
rustc --version
cargo --version
```
#### Opsional
- **Docker Desktop** — diperlukan hanya jika menggunakan [runtime Docker sandboxed](#dukungan-runtime-saat-ini) (`runtime.kind = "docker"`). Instal melalui `winget install Docker.DockerDesktop`.
</details>
<details>
<summary><strong>Linux / macOS</strong></summary>
#### Diperlukan
1. **Build essentials:**
- **Linux (Debian/Ubuntu):** `sudo apt install build-essential pkg-config`
- **Linux (Fedora/RHEL):** `sudo dnf group install development-tools && sudo dnf install pkg-config`
- **macOS:** Instal Xcode Command Line Tools: `xcode-select --install`
2. **Rust toolchain:**
```bash
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
```
Lihat [rustup.rs](https://rustup.rs) untuk detail.
3. **Verifikasi** keduanya berfungsi:
```bash
rustc --version
cargo --version
```
#### Installer Satu Baris
Atau lewati langkah di atas dan instal semuanya (dependensi sistem, Rust, ZeroClaw) dalam satu perintah:
```bash
curl -LsSf https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/install.sh | bash
```
#### Kebutuhan sumber daya kompilasi
Membangun dari sumber memerlukan lebih banyak sumber daya daripada menjalankan biner yang dihasilkan:
| Sumber Daya | Minimum | Disarankan |
| -------------- | ------- | ----------- |
| **RAM + swap** | 2 GB | 4 GB+ |
| **Disk kosong**| 6 GB | 10 GB+ |
Jika host Anda di bawah minimum, gunakan biner pre-built:
```bash
./install.sh --prefer-prebuilt
```
Untuk memerlukan instalasi hanya-biner tanpa fallback sumber:
```bash
./install.sh --prebuilt-only
```
#### Opsional
- **Docker** — diperlukan hanya jika menggunakan [runtime Docker sandboxed](#dukungan-runtime-saat-ini) (`runtime.kind = "docker"`). Instal melalui manajer paket Anda atau [docker.com](https://docs.docker.com/engine/install/).
> **Catatan:** Default `cargo build --release` menggunakan `codegen-units=1` untuk menurunkan tekanan kompilasi puncak. Untuk build lebih cepat di mesin yang kuat, gunakan `cargo build --profile release-fast`.
</details>
<!-- markdownlint-enable MD001 MD024 -->
### Biner pre-built
Aset rilis dipublikasikan untuk:
- Linux: `x86_64`, `aarch64`, `armv7`
- macOS: `x86_64`, `aarch64`
- Windows: `x86_64`
Unduh aset terbaru dari:
<https://github.com/zeroclaw-labs/zeroclaw/releases/latest>
---
## Dokumentasi
Gunakan ini ketika Anda sudah melewati alur onboarding dan menginginkan referensi yang lebih mendalam.
Untuk dokumentasi terperinci, lihat:
- Mulai dengan [indeks dokumentasi](docs/README.md) untuk navigasi dan "apa di mana."
- Baca [ikhtisar arsitektur](docs/architecture.md) untuk model sistem lengkap.
- Gunakan [referensi konfigurasi](docs/reference/api/config-reference.md) ketika Anda memerlukan setiap kunci dan contoh.
- Jalankan Gateway sesuai buku dengan [runbook operasional](docs/ops/operations-runbook.md).
- Ikuti [ZeroClaw Onboard](#mulai-cepat) untuk pengaturan terpandu.
- Debug kegagalan umum dengan [panduan pemecahan masalah](docs/ops/troubleshooting.md).
- Tinjau [panduan keamanan](docs/security/README.md) sebelum mengekspos apa pun.
- [Hub Dokumentasi](docs/README.md)
- [Referensi Perintah](docs/commands-reference.md)
- [Referensi Penyedia](docs/providers-reference.md)
- [Referensi Saluran](docs/channels-reference.md)
- [Referensi Konfigurasi](docs/config-reference.md)
### Dokumentasi referensi
- Hub dokumentasi: [docs/README.md](docs/README.md)
- TOC dokumentasi terpadu: [docs/SUMMARY.md](docs/SUMMARY.md)
- Referensi perintah: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
- Referensi konfigurasi: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md)
- Referensi provider: [docs/reference/api/providers-reference.md](docs/reference/api/providers-reference.md)
- Referensi saluran: [docs/reference/api/channels-reference.md](docs/reference/api/channels-reference.md)
- Runbook operasional: [docs/ops/operations-runbook.md](docs/ops/operations-runbook.md)
- Pemecahan masalah: [docs/ops/troubleshooting.md](docs/ops/troubleshooting.md)
### Dokumentasi kolaborasi
- Panduan kontribusi: [CONTRIBUTING.md](CONTRIBUTING.md)
- Kebijakan alur kerja PR: [docs/contributing/pr-workflow.md](docs/contributing/pr-workflow.md)
- Panduan alur kerja CI: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- Playbook reviewer: [docs/contributing/reviewer-playbook.md](docs/contributing/reviewer-playbook.md)
- Kebijakan pengungkapan keamanan: [SECURITY.md](SECURITY.md)
- Template dokumentasi: [docs/contributing/doc-template.md](docs/contributing/doc-template.md)
### Deployment + operasi
- Panduan deployment jaringan: [docs/ops/network-deployment.md](docs/ops/network-deployment.md)
- Playbook proxy agent: [docs/ops/proxy-agent-playbook.md](docs/ops/proxy-agent-playbook.md)
- Panduan perangkat keras: [docs/hardware/README.md](docs/hardware/README.md)
## Smooth Crab 🦀
ZeroClaw dibangun untuk smooth crab 🦀, asisten AI yang cepat dan efisien. Dibangun oleh Argenis De La Rosa dan komunitas.
- [zeroclawlabs.ai](https://zeroclawlabs.ai)
- [@zeroclawlabs](https://x.com/zeroclawlabs)
## Dukung ZeroClaw
Jika ZeroClaw membantu pekerjaan Anda dan Anda ingin mendukung pengembangan berkelanjutan, Anda dapat berdonasi di sini:
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=for-the-badge&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
### 🙏 Terima Kasih Khusus
Terima kasih yang tulus kepada komunitas dan institusi yang menginspirasi dan mendorong pekerjaan open-source ini:
- **Harvard University** — untuk memupuk rasa ingin tahu intelektual dan mendorong batas dari apa yang mungkin.
- **MIT** — untuk memperjuangkan pengetahuan terbuka, open source, dan keyakinan bahwa teknologi harus dapat diakses oleh semua orang.
- **Sundai Club** — untuk komunitas, energi, dan dorongan tanpa henti untuk membangun hal-hal yang penting.
- **Dunia & Seterusnya** 🌍✨ — kepada setiap kontributor, pemimpi, dan pembangun di luar sana yang menjadikan open source sebagai kekuatan untuk kebaikan. Ini untuk kalian.
Kami membangun secara terbuka karena ide terbaik datang dari mana saja. Jika Anda membaca ini, Anda adalah bagian darinya. Selamat datang. 🦀❤️
---
## Berkontribusi
Baru di ZeroClaw? Cari isu berlabel [`good first issue`](https://github.com/zeroclaw-labs/zeroclaw/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) — lihat [Panduan Kontribusi](CONTRIBUTING.md#first-time-contributors) untuk cara memulai. PR yang dibuat dengan AI/vibe-coded dipersilakan! 🤖
Lihat [CONTRIBUTING.md](CONTRIBUTING.md) dan [CLA.md](docs/contributing/cla.md). Implementasikan trait, kirimkan PR:
- Panduan alur kerja CI: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- `Provider` baru → `src/providers/`
- `Channel` baru → `src/channels/`
- `Observer` baru → `src/observability/`
- `Tool` baru → `src/tools/`
- `Memory` baru → `src/memory/`
- `Tunnel` baru → `src/tunnel/`
- `Peripheral` baru → `src/peripherals/`
- `Skill` baru → `~/.zeroclaw/workspace/skills/<name>/`
<!-- BEGIN:RECENT_CONTRIBUTORS -->
<!-- END:RECENT_CONTRIBUTORS -->
## ⚠️ Repositori Resmi & Peringatan Peniruan
**Ini adalah satu-satunya repositori resmi ZeroClaw:**
> https://github.com/zeroclaw-labs/zeroclaw
Repositori, organisasi, domain, atau paket lain yang mengklaim sebagai "ZeroClaw" atau menyiratkan afiliasi dengan ZeroClaw Labs adalah **tidak sah dan tidak berafiliasi dengan proyek ini**. Fork tidak sah yang diketahui akan terdaftar di [TRADEMARK.md](docs/maintainers/trademark.md).
Jika Anda menemukan peniruan atau penyalahgunaan merek dagang, silakan [buka isu](https://github.com/zeroclaw-labs/zeroclaw/issues).
Kontribusi diterima! Silakan baca [Panduan Kontribusi](CONTRIBUTING.md).
---
## Lisensi
ZeroClaw memiliki dual-license untuk keterbukaan maksimum dan perlindungan kontributor:
Proyek ini dilisensikan ganda:
| Lisensi | Kasus penggunaan |
|---|---|
| [MIT](LICENSE-MIT) | Open-source, riset, akademik, penggunaan pribadi |
| [Apache 2.0](LICENSE-APACHE) | Perlindungan paten, institusional, deployment komersial |
- MIT License
- Apache License, versi 2.0
Anda dapat memilih salah satu lisensi. **Kontributor secara otomatis memberikan hak di bawah keduanya** — lihat [CLA.md](docs/contributing/cla.md) untuk perjanjian kontributor lengkap.
### Merek Dagang
Nama dan logo **ZeroClaw** adalah merek dagang dari ZeroClaw Labs. Lisensi ini tidak memberikan izin untuk menggunakannya untuk menyiratkan dukungan atau afiliasi. Lihat [TRADEMARK.md](docs/maintainers/trademark.md) untuk penggunaan yang diizinkan dan dilarang.
### Perlindungan Kontributor
- Anda **mempertahankan hak cipta** atas kontribusi Anda
- **Hibah paten** (Apache 2.0) melindungi Anda dari klaim paten oleh kontributor lain
- Kontribusi Anda **secara permanen diatribusikan** dalam riwayat commit dan [NOTICE](NOTICE)
- Tidak ada hak merek dagang yang dialihkan dengan berkontribusi
Lihat [LICENSE-APACHE](LICENSE-APACHE) dan [LICENSE-MIT](LICENSE-MIT) untuk detailnya.
---
**ZeroClaw** — Nol overhead. Nol kompromi. Deploy di mana saja. Tukar apa saja. 🦀
## Komunitas
## Kontributor
- [Telegram](https://t.me/zeroclawlabs)
- [Facebook Group](https://www.facebook.com/groups/zeroclaw)
- [WeChat Group](https://zeroclawlabs.cn/group.jpg)
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors">
<img src="https://contrib.rocks/image?repo=zeroclaw-labs/zeroclaw" alt="ZeroClaw contributors" />
</a>
---
Daftar ini dihasilkan dari grafik kontributor GitHub dan diperbarui secara otomatis.
## Sponsor
## Riwayat Bintang
Jika ZeroClaw berguna bagi Anda, mohon pertimbangkan untuk membelikan kami kopi:
<p align="center">
<a href="https://www.star-history.com/#zeroclaw-labs/zeroclaw&type=date&legend=top-left">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&theme=dark&legend=top-left" />
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
</picture>
</a>
</p>
[![Buy Me a Coffee](https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee)](https://buymeacoffee.com/argenistherose)
<!-- BEGIN:RECENT_CONTRIBUTORS -->
### 🌟 Recent Contributors (v0.3.1)
3 contributors shipped features, fixes, and improvements in this release cycle:
- **Argenis**
- **argenis de la rosa**
- **Claude Opus 4.6**
Thank you to everyone who opened issues, reviewed PRs, translated docs, and helped test. Every contribution matters. 🦀
<!-- END:RECENT_CONTRIBUTORS -->

File diff suppressed because it is too large Load Diff

View File

@ -1,33 +1,24 @@
<p align="center">
<img src="https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/docs/assets/zeroclaw-banner.png" alt="ZeroClaw" width="600" />
<img src="docs/assets/zeroclaw.png" alt="ZeroClaw" width="200" />
</p>
<h1 align="center">🦀 ZeroClaw — パーソナルAIアシスタント</h1>
<h1 align="center">ZeroClaw 🦀(日本語)</h1>
<p align="center">
<strong>ゼロオーバーヘッド。ゼロ妥協。100% Rust。100% 非依存。</strong><br>
⚡️ <strong>10ドルのハードウェアで5MB未満のRAMで動作OpenClawより99%少ないメモリ、Mac miniより98%安い!</strong>
<strong>Zero overhead. Zero compromise. 100% Rust. 100% Agnostic.</strong>
</p>
<p align="center">
<a href="LICENSE-APACHE"><img src="https://img.shields.io/badge/license-MIT%20OR%20Apache%202.0-blue.svg" alt="License: MIT OR Apache-2.0" /></a>
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors"><img src="https://img.shields.io/github/contributors/zeroclaw-labs/zeroclaw?color=green" alt="Contributors" /></a>
<a href="NOTICE"><img src="https://img.shields.io/badge/contributors-27+-green.svg" alt="Contributors" /></a>
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
<a href="https://x.com/zeroclawlabs?s=21"><img src="https://img.shields.io/badge/X-%40zeroclawlabs-000000?style=flat&logo=x&logoColor=white" alt="X: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclawlabs"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
<a href="https://discord.com/invite/wDshRVqRjx"><img src="https://img.shields.io/badge/Discord-Join-5865F2?style=flat&logo=discord&logoColor=white" alt="Discord" /></a>
<a href="https://www.instagram.com/therealzeroclaw"><img src="https://img.shields.io/badge/Instagram-%40therealzeroclaw-E4405F?style=flat&logo=instagram&logoColor=white" alt="Instagram: @therealzeroclaw" /></a>
<a href="https://www.tiktok.com/@zeroclawlabs"><img src="https://img.shields.io/badge/TikTok-%40zeroclawlabs-000000?style=flat&logo=tiktok&logoColor=white" alt="TikTok: @zeroclawlabs" /></a>
<a href="https://www.rednote.com/user/profile/69b735e6000000002603927e"><img src="https://img.shields.io/badge/RedNote-Official-FF2442?style=flat" alt="RedNote" /></a>
<a href="https://www.facebook.com/groups/zeroclaw"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
<a href="https://www.reddit.com/r/zeroclawlabs/"><img src="https://img.shields.io/badge/Reddit-r%2Fzeroclawlabs-FF4500?style=flat&logo=reddit&logoColor=white" alt="Reddit: r/zeroclawlabs" /></a>
</p>
<p align="center">
ハーバード大学、MIT、Sundai.Clubコミュニティの学生とメンバーにより構築。
</p>
<p align="center">
🌐 <strong>Languages:</strong>
🌐 言語:
<a href="README.md">🇺🇸 English</a> ·
<a href="README.zh-CN.md">🇨🇳 简体中文</a> ·
<a href="README.ja.md">🇯🇵 日本語</a> ·
@ -61,190 +52,85 @@
<a href="README.nb.md">🇳🇴 Norsk</a>
</p>
ZeroClawは、あなた自身のデバイスで実行するパーソナルAIアシスタントです。既に使用しているチャンネルWhatsApp、Telegram、Slack、Discord、Signal、iMessage、Matrix、IRC、Email、Bluesky、Nostr、Mattermost、Nextcloud Talk、DingTalk、Lark、QQ、Reddit、LinkedIn、Twitter、MQTT、WeChat Workなどで応答します。リアルタイム制御用のウェブダッシュボードを備え、ハードウェア周辺機器ESP32、STM32、Arduino、Raspberry Piに接続できます。Gatewayはコントロールプレーンに過ぎず、製品はアシスタントそのものです。
ローカルで高速、常時稼働のパーソナルなシングルユーザーアシスタントが必要なら、これがその答えです。
<p align="center">
<a href="https://zeroclawlabs.ai">ウェブサイト</a> ·
<a href="docs/README.md">ドキュメント</a> ·
<a href="docs/architecture.md">アーキテクチャ</a> ·
<a href="#クイックスタートtldr">はじめに</a> ·
<a href="#openclawからの移行">OpenClawからの移行</a> ·
<a href="docs/ops/troubleshooting.md">トラブルシューティング</a> ·
<a href="https://discord.com/invite/wDshRVqRjx">Discord</a>
<a href="https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/install.sh">ワンクリック導入</a> |
<a href="docs/setup-guides/README.md">導入ガイド</a> |
<a href="docs/README.ja.md">ドキュメントハブ</a> |
<a href="docs/SUMMARY.md">Docs TOC</a>
</p>
> **推奨セットアップ:** ターミナルで `zeroclaw onboard` を実行してください。ZeroClaw Onboardがゲートウェイ、ワークスペース、チャンネル、プロバイダーのセットアップをステップバイステップでガイドします。これは推奨されるセットアップパスで、macOS、Linux、WindowsWSL2経由で動作します。新規インストールここから開始[はじめに](#クイックスタートtldr)
<p align="center">
<strong>クイック分流:</strong>
<a href="docs/reference/README.md">参照</a> ·
<a href="docs/ops/README.md">運用</a> ·
<a href="docs/ops/troubleshooting.md">障害対応</a> ·
<a href="docs/security/README.md">セキュリティ</a> ·
<a href="docs/hardware/README.md">ハードウェア</a> ·
<a href="docs/contributing/README.md">貢献・CI</a>
</p>
### サブスクリプション認証OAuth
- **OpenAI Codex**ChatGPTサブスクリプション
- **Gemini**Google OAuth
- **Anthropic**APIキーまたは認証トークン
モデルに関する注意:多くのプロバイダー/モデルがサポートされていますが、最良のエクスペリエンスのために、利用可能な最新世代の最も強力なモデルを使用してください。[オンボーディング](#クイックスタートtldr)を参照。
モデル設定 + CLI[プロバイダーリファレンス](docs/reference/api/providers-reference.md)
認証プロファイルローテーションOAuth vs APIキー+ フェイルオーバー:[モデルフェイルオーバー](docs/reference/api/providers-reference.md)
## インストール(推奨)
ランタイムRust stable ツールチェーン。単一バイナリ、ランタイム依存なし。
### HomebrewmacOS/Linuxbrew
```bash
brew install zeroclaw
```
### ワンクリックブートストラップ
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./install.sh
```
`zeroclaw onboard` はインストール後に自動的に実行され、ワークスペースとプロバイダーを設定します。
## クイックスタートTL;DR
完全な初心者ガイド(認証、ペアリング、チャンネル):[はじめに](docs/setup-guides/one-click-bootstrap.md)
```bash
# インストール + オンボード
./install.sh --api-key "sk-..." --provider openrouter
# ゲートウェイを起動webhookサーバー + ウェブダッシュボード)
zeroclaw gateway # デフォルト127.0.0.1:42617
zeroclaw gateway --port 0 # ランダムポート(セキュリティ強化)
# アシスタントと会話
zeroclaw agent -m "Hello, ZeroClaw!"
# インタラクティブモード
zeroclaw agent
# フル自律ランタイムを起動(ゲートウェイ + チャンネル + cron + hands
zeroclaw daemon
# ステータス確認
zeroclaw status
# 診断を実行
zeroclaw doctor
```
アップグレード?更新後に `zeroclaw doctor` を実行してください。
### ソースからビルド(開発)
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
cargo build --release --locked
cargo install --path . --force --locked
zeroclaw onboard
```
> **開発用代替手段(グローバルインストールなし):** コマンドの前に `cargo run --release --` を付けてください(例:`cargo run --release -- status`)。
## OpenClawからの移行
ZeroClawはOpenClawのワークスペース、メモリ、設定をインポートできます
```bash
# 移行内容のプレビュー(安全、読み取り専用)
zeroclaw migrate openclaw --dry-run
# 移行を実行
zeroclaw migrate openclaw
```
これにより、メモリエントリ、ワークスペースファイル、設定が `~/.openclaw/` から `~/.zeroclaw/` に移行されます。設定はJSONからTOMLに自動変換されます。
## セキュリティデフォルトDMアクセス
ZeroClawは実際のメッセージングサービスに接続します。着信DMを信頼できない入力として扱ってください。
完全なセキュリティガイド:[SECURITY.md](SECURITY.md)
すべてのチャンネルのデフォルト動作:
- **DMペアリング**(デフォルト):不明な送信者には短いペアリングコードが送信され、ボットはメッセージを処理しません。
- 承認方法:`zeroclaw pairing approve <channel> <code>`(送信者がローカル許可リストに追加されます)。
- パブリック着信DMには `config.toml` での明示的なオプトインが必要です。
- `zeroclaw doctor` を実行してリスクのある、または設定ミスのあるDMポリシーを検出します。
**自律レベル:**
| レベル | 動作 |
|--------|------|
| `ReadOnly` | エージェントは観察のみで操作不可 |
| `Supervised`(デフォルト) | エージェントは中/高リスク操作時に承認が必要 |
| `Full` | エージェントはポリシー範囲内で自律的に操作 |
**サンドボックス層:** ワークスペース分離、パストラバーサルブロック、コマンド許可リスト、禁止パス(`/etc`、`/root`、`~/.ssh`)、レート制限(時間あたり最大アクション数、日あたりコスト上限)。
> この文書は `README.md` の内容を、正確性と可読性を重視して日本語に整えた版です(逐語訳ではありません)。
>
> コマンド名、設定キー、API パス、Trait 名などの技術識別子は英語のまま維持しています。
>
> 最終同期日: **2026-02-19**
<!-- BEGIN:WHATS_NEW -->
### 🚀 What's New in v0.3.1 (March 2026)
| Area | Highlights |
|---|---|
| ci | add Termux (aarch64-linux-android) release target |
<!-- END:WHATS_NEW -->
### 📢 お知らせ
## 📢 お知らせボード
このボードは重要な通知(破壊的変更、セキュリティアドバイザリ、メンテナンスウィンドウ、リリースブロッカー)に使用します。
重要なお知らせ(互換性破壊変更、セキュリティ告知、メンテナンス時間、リリース阻害事項など)をここに掲載します。
| 日付 (UTC) | レベル | 通知 | 対応 |
| ---------- | ------ | ---- | ---- |
| 2026-02-19 | _重大_ | 当プロジェクトは `openagen/zeroclaw`、`zeroclaw.org`、`zeroclaw.net` とは**一切関係ありません**。`zeroclaw.org` と `zeroclaw.net` ドメインは現在 `openagen/zeroclaw` フォークを指しており、そのドメイン/リポジトリは当プロジェクトの公式ウェブサイト/プロジェクトを偽装しています。 | それらのソースからの情報、バイナリ、資金調達、告知を信頼しないでください。[このリポジトリ](https://github.com/zeroclaw-labs/zeroclaw)と認証済みのソーシャルアカウントのみを使用してください。 |
| 2026-02-21 | _重要_ | 公式ウェブサイトが公開されました:[zeroclawlabs.ai](https://zeroclawlabs.ai)。ローンチ準備中のお待ちいただき、ありがとうございます。引き続き偽装行為が確認されていますので、公式チャンネルを通じて公開されない限り、ZeroClawの名前を使った投資や資金調達活動には**参加しないでください**。 | [このリポジトリ](https://github.com/zeroclaw-labs/zeroclaw)を唯一の信頼できる情報源として使用してください。公式アップデートは [X (@zeroclawlabs)](https://x.com/zeroclawlabs?s=21)、[Facebook (Group)](https://www.facebook.com/groups/zeroclawlabs)、[Reddit (r/zeroclawlabs)](https://www.reddit.com/r/zeroclawlabs/) をフォローしてください。 |
| 2026-02-19 | _重要_ | Anthropicは2026-02-19に認証と資格情報の使用に関する規約を更新しました。Claude Code OAuthトークンFree、Pro、MaxはClaude CodeおよびClaude.ai専用です。Claude Free/Pro/MaxのOAuthトークンを他の製品、ツール、サービスAgent SDKを含むで使用することは許可されておらず、消費者利用規約に違反する可能性があります。 | 潜在的な損失を防ぐため、一時的にClaude Code OAuth統合を避けてください。元の条項[Authentication and Credential Use](https://code.claude.com/docs/en/legal-and-compliance#authentication-and-credential-use)。 |
| 日付 (UTC) | レベル | お知らせ | 対応 |
|---|---|---|---|
| 2026-02-19 | _緊急_ | 私たちは `openagen/zeroclaw` および `zeroclaw.org` とは**一切関係ありません**。`zeroclaw.org` は現在 `openagen/zeroclaw` の fork を指しており、そのドメイン/リポジトリは当プロジェクトの公式サイト・公式プロジェクトを装っています。 | これらの情報源による案内、バイナリ、資金調達情報、公式発表は信頼しないでください。必ず[本リポジトリ](https://github.com/zeroclaw-labs/zeroclaw)と認証済み公式SNSのみを参照してください。 |
| 2026-02-21 | _重要_ | 公式サイトを公開しました: [zeroclawlabs.ai](https://zeroclawlabs.ai)。公開までお待ちいただきありがとうございました。引き続きなりすましの試みを確認しているため、ZeroClaw 名義の投資・資金調達などの案内は、公式チャネルで確認できない限り参加しないでください。 | 情報は[本リポジトリ](https://github.com/zeroclaw-labs/zeroclaw)を最優先で確認し、[X@zeroclawlabs](https://x.com/zeroclawlabs?s=21)、[Telegram@zeroclawlabs](https://t.me/zeroclawlabs)、[Facebookグループ](https://www.facebook.com/groups/zeroclaw)、[Redditr/zeroclawlabs](https://www.reddit.com/r/zeroclawlabs/) と [小紅書アカウント](https://www.xiaohongshu.com/user/profile/67cbfc43000000000d008307?xsec_token=AB73VnYnGNx5y36EtnnZfGmAmS-6Wzv8WMuGpfwfkg6Yc%3D&xsec_source=pc_search) で公式更新を確認してください。 |
| 2026-02-19 | _重要_ | Anthropic は 2026-02-19 に Authentication and Credential Use を更新しました。条文では、OAuth authenticationFree/Pro/Maxは Claude Code と Claude.ai 専用であり、Claude Free/Pro/Max で取得した OAuth トークンを他の製品・ツール・サービスAgent SDK を含むで使用することは許可されず、Consumer Terms of Service 違反に該当すると明記されています。 | 損失回避のため、当面は Claude Code OAuth 連携を試さないでください。原文: [Authentication and Credential Use](https://code.claude.com/docs/en/legal-and-compliance#authentication-and-credential-use)。 |
## ハイライト
## 概要
- **デフォルトでリーンなランタイム** — 一般的なCLIとステータスワークフローは、リリースビルドで数メガバイトのメモリエンベロープで実行されます。
- **コスト効率の良いデプロイ** — 10ドルボードや小規模クラウドインスタンス向けに設計、重量級ランタイム依存なし。
- **高速コールドスタート** — シングルバイナリRustランタイムにより、コマンドとデーモンの起動がほぼ瞬時。
- **ポータブルアーキテクチャ** — ARM、x86、RISC-Vにまたがる単一バイナリで、プロバイダー/チャンネル/ツールが交換可能。
- **ローカルファーストゲートウェイ** — セッション、チャンネル、ツール、cron、SOP、イベントの単一コントロールプレーン。
- **マルチチャンネル受信箱** — WhatsApp、Telegram、Slack、Discord、Signal、iMessage、Matrix、IRC、Email、Bluesky、Nostr、Mattermost、Nextcloud Talk、DingTalk、Lark、QQ、Reddit、LinkedIn、Twitter、MQTT、WeChat Work、WebSocketなど。
- **マルチエージェントオーケストレーションHands** — スケジュールに基づいて実行され、時間とともにスマートになる自律エージェントスウォーム。
- **標準運用手順SOPs** — MQTT、webhook、cron、周辺機器トリガーによるイベント駆動ワークフロー自動化。
- **ウェブダッシュボード** — React 19 + Viteウェブ UIで、リアルタイムチャット、メモリブラウザ、設定エディタ、cronマネージャー、ツールインスペクター。
- **ハードウェア周辺機器**`Peripheral` traitを通じてESP32、STM32 Nucleo、Arduino、Raspberry Pi GPIOをサポート。
- **ファーストクラスツール** — shell、ファイルI/O、ブラウザ、git、ウェブフェッチ/検索、MCP、Jira、Notion、Google Workspaceなど70以上。
- **ライフサイクルフック** — あらゆる段階でLLM呼び出し、ツール実行、メッセージをインターセプトおよび変更。
- **スキルプラットフォーム** — バンドル、コミュニティ、ワークスペーススキルとセキュリティ監査。
- **トンネルサポート** — Cloudflare、Tailscale、ngrok、OpenVPN、カスタムトンネルによるリモートアクセス。
ZeroClaw は、高速・省リソース・高拡張性を重視した自律エージェント実行基盤です。ZeroClawはエージェントワークフローのための**ランタイムオペレーティングシステム**です — モデル、ツール、メモリ、実行を抽象化し、エージェントを一度構築すればどこでも実行できるインフラストラクチャです。
### チームがZeroClawを選ぶ理由
- Rust ネイティブ実装、単一バイナリで配布可能
- Trait ベース設計(`Provider` / `Channel` / `Tool` / `Memory` など)
- セキュアデフォルト(ペアリング、明示 allowlist、サンドボックス、スコープ制御
- **デフォルトでリーン:** 小型Rustバイナリ、高速起動、低メモリフットプリント。
- **設計によるセキュリティ:** ペアリング、厳格なサンドボックス、明示的な許可リスト、ワークスペーススコーピング。
- **完全に交換可能:** コアシステムはすべてtraitプロバイダー、チャンネル、ツール、メモリ、トンネル
- **ロックインなし:** OpenAI互換プロバイダーサポート + プラガブルなカスタムエンドポイント。
## ZeroClaw が選ばれる理由
- **軽量ランタイムを標準化**: CLI や `status` などの常用操作は数MB級メモリで動作。
- **低コスト環境に適合**: 低価格ボードや小規模クラウドでも、重い実行基盤なしで運用可能。
- **高速コールドスタート**: Rust 単一バイナリにより、主要コマンドと daemon 起動が非常に速い。
- **高い移植性**: ARM / x86 / RISC-V を同じ運用モデルで扱え、provider/channel/tool を差し替え可能。
## ベンチマークスナップショットZeroClaw vs OpenClaw、再現可能
ローカルマシンクイックベンチマークmacOS arm64、2026年2月、0.8GHzエッジハードウェア向けに正規化
以下はローカルのクイック比較macOS arm64、2026年2月を、0.8GHz エッジ CPU 基準で正規化したものです。
| | OpenClaw | NanoBot | PicoClaw | ZeroClaw 🦀 |
| ------------------------- | ------------- | -------------- | --------------- | -------------------- |
| **言語** | TypeScript | Python | Go | **Rust** |
| **RAM** | > 1GB | > 100MB | < 10MB | **< 5MB** |
| **起動時間0.8GHzコア)** | > 500s | > 30s | < 1s | **< 10ms** |
| **バイナリサイズ** | ~28MB (dist) | N/A (Scripts) | ~8MB | **~8.8 MB** |
| **コスト** | Mac Mini $599 | Linux SBC ~$50 | Linux Board $10 | **任意のハードウェア $10** |
| | OpenClaw | NanoBot | PicoClaw | ZeroClaw 🦀 |
|---|---|---|---|---|
| **言語** | TypeScript | Python | Go | **Rust** |
| **RAM** | > 1GB | > 100MB | < 10MB | **< 5MB** |
| **起動時間0.8GHz コア)** | > 500s | > 30s | < 1s | **< 10ms** |
| **バイナリサイズ** | ~28MBdist | N/Aスクリプト | ~8MB | **~8.8 MB** |
| **コスト** | Mac Mini $599 | Linux SBC ~$50 | Linux ボード $10 | **任意の $10 ハードウェア** |
> 注ZeroClawの結果はリリースビルドで `/usr/bin/time -l` を使用して測定されています。OpenClawにはNode.jsランタイム通常約390MBの追加メモリオーバーヘッドが必要で、NanoBotにはPythonランタイムが必要です。PicoClawとZeroClawは静的バイナリです。上記のRAM数値はランタイムメモリです。ビルド時のコンパイル要件はより高くなります。
> 注記: ZeroClaw の結果は release ビルドを `/usr/bin/time -l` で計測したものです。OpenClaw は Node.js ランタイムが必要で、ランタイム由来だけで通常は約390MBの追加メモリを要します。NanoBot は Python ランタイムが必要です。PicoClaw と ZeroClaw は静的バイナリです。
<p align="center">
<img src="docs/assets/zeroclaw-comparison.jpeg" alt="ZeroClaw vs OpenClaw Comparison" width="800" />
</p>
### 再現可能なローカル測定
### ローカルで再現可能な測定
ベンチマーク値はコードやツールチェーン更新で変わるため、必ず自身の環境で再測定してください。
```bash
cargo build --release
@ -254,502 +140,115 @@ ls -lh target/release/zeroclaw
/usr/bin/time -l target/release/zeroclaw status
```
## これまでに構築したすべて
README のサンプル値macOS arm64, 2026-02-18:
### コアプラットフォーム
- Release バイナリ: `8.8M`
- `zeroclaw --help`: 約 `0.02s`、ピークメモリ 約 `3.9MB`
- `zeroclaw status`: 約 `0.01s`、ピークメモリ 約 `4.1MB`
- Gateway HTTP/WS/SSEコントロールプレーンセッション、プレゼンス、設定、cron、webhook、ウェブダッシュボード、ペアリング。
- CLIサーフェス`gateway`、`agent`、`onboard`、`doctor`、`status`、`service`、`migrate`、`auth`、`cron`、`channel`、`skills`。
- エージェントオーケストレーションループ:ツールディスパッチ、プロンプト構築、メッセージ分類、メモリロード。
- セッションモデル:セキュリティポリシー実行、自律レベル、承認ゲーティング。
- レジリエントプロバイダーラッパー20以上のLLMバックエンドにわたるフェイルオーバー、リトライ、モデルルーティング。
### チャンネル
チャンネルWhatsAppネイティブ、Telegram、Slack、Discord、Signal、iMessage、Matrix、IRC、Email、Bluesky、DingTalk、Lark、Mattermost、Nextcloud Talk、Nostr、QQ、Reddit、LinkedIn、Twitter、MQTT、WeChat Work、WATI、Mochat、Linq、Notion、WebSocket、ClawdTalk。
フィーチャーゲートMatrix`channel-matrix`、Lark`channel-lark`、Nostr`channel-nostr`)。
### ウェブダッシュボード
React 19 + Vite 6 + Tailwind CSS 4 ウェブダッシュボード、Gatewayから直接提供
- **ダッシュボード** — システム概要、ヘルスステータス、アップタイム、コストトラッキング
- **エージェントチャット** — エージェントとのインタラクティブチャット
- **メモリ** — メモリエントリの閲覧と管理
- **設定** — 設定の表示と編集
- **Cron** — スケジュールタスクの管理
- **ツール** — 利用可能なツールの閲覧
- **ログ** — エージェントアクティビティログの表示
- **コスト** — トークン使用量とコストトラッキング
- **Doctor** — システムヘルス診断
- **インテグレーション** — インテグレーションステータスとセットアップ
- **ペアリング** — デバイスペアリング管理
### ファームウェアターゲット
| ターゲット | プラットフォーム | 用途 |
|------------|------------------|------|
| ESP32 | Espressif ESP32 | ワイヤレス周辺機器エージェント |
| ESP32-UI | ESP32 + Display | ビジュアルインターフェース付きエージェント |
| STM32 Nucleo | STM32 (ARM Cortex-M) | 産業用周辺機器 |
| Arduino | Arduino | 基本センサー/アクチュエーターブリッジ |
| Uno Q Bridge | Arduino Uno | エージェントへのシリアルブリッジ |
### ツール + 自動化
- **コア:** shell、ファイル読み書き/編集、git操作、glob検索、コンテンツ検索
- **ウェブ:** ブラウザ制御、ウェブフェッチ、ウェブ検索、スクリーンショット、画像情報、PDF読み取り
- **インテグレーション:** Jira、Notion、Google Workspace、Microsoft 365、LinkedIn、Composio、Pushover
- **MCP** Model Context Protocolツールラッパー + 遅延ツールセット
- **スケジューリング:** cron追加/削除/更新/実行、スケジュールツール
- **メモリ:** 想起、保存、忘却、知識、プロジェクトインテル
- **高度:** 委譲(エージェント間)、スウォーム、モデル切り替え/ルーティング、セキュリティオプス、クラウドオプス
- **ハードウェア:** ボード情報、メモリマップ、メモリ読み取り(フィーチャーゲート)
### ランタイム + 安全性
- **自律レベル:** ReadOnly、Supervisedデフォルト、Full。
- **サンドボックス:** ワークスペース分離、パストラバーサルブロック、コマンド許可リスト、禁止パス、LandlockLinux、Bubblewrap。
- **レート制限:** 時間あたり最大アクション数、日あたり最大コスト(設定可能)。
- **承認ゲーティング:** 中/高リスク操作のインタラクティブ承認。
- **緊急停止:** 緊急シャットダウン機能。
- **129以上のセキュリティテスト** が自動化CIに含まれています。
### 運用 + パッケージング
- ウェブダッシュボードはGatewayから直接提供。
- トンネルサポートCloudflare、Tailscale、ngrok、OpenVPN、カスタムコマンド。
- Dockerランタイムアダプターによるコンテナ化実行。
- CI/CDbetaプッシュ時自動→ stable手動ディスパッチ→ Docker、crates.io、Scoop、AUR、Homebrew、tweet。
- プリビルドバイナリLinuxx86_64、aarch64、armv7、macOSx86_64、aarch64、Windowsx86_64
## 設定
最小 `~/.zeroclaw/config.toml`
```toml
default_provider = "anthropic"
api_key = "sk-ant-..."
```
完全な設定リファレンス:[docs/reference/api/config-reference.md](docs/reference/api/config-reference.md)。
### チャンネル設定
**Telegram**
```toml
[channels.telegram]
bot_token = "123456:ABC-DEF..."
```
**Discord**
```toml
[channels.discord]
token = "your-bot-token"
```
**Slack**
```toml
[channels.slack]
bot_token = "xoxb-..."
app_token = "xapp-..."
```
**WhatsApp**
```toml
[channels.whatsapp]
enabled = true
```
**Matrix**
```toml
[channels.matrix]
homeserver_url = "https://matrix.org"
username = "@bot:matrix.org"
password = "..."
```
**Signal**
```toml
[channels.signal]
phone_number = "+1234567890"
```
### トンネル設定
```toml
[tunnel]
kind = "cloudflare" # or "tailscale", "ngrok", "openvpn", "custom", "none"
```
詳細:[チャンネルリファレンス](docs/reference/api/channels-reference.md) · [設定リファレンス](docs/reference/api/config-reference.md)
### ランタイムサポート(現在)
- **`native`**(デフォルト)— 直接プロセス実行、最速パス、信頼できる環境に最適。
- **`docker`** — 完全なコンテナ分離、強制セキュリティポリシー、Docker必要。
厳格なサンドボックスまたはネットワーク分離には `runtime.kind = "docker"` を設定してください。
## サブスクリプション認証OpenAI Codex / Claude Code / Gemini
ZeroClawはサブスクリプションネイティブ認証プロファイルマルチアカウント、保存時暗号化をサポートしています。
- ストアファイル:`~/.zeroclaw/auth-profiles.json`
- 暗号化キー:`~/.zeroclaw/.secret_key`
- プロファイルIDフォーマット`<provider>:<profile_name>`(例:`openai-codex:work`
## ワンクリック導入
```bash
# OpenAI Codex OAuthChatGPTサブスクリプション
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./install.sh
```
環境ごと初期化する場合: `./install.sh --install-system-deps --install-rust`(システムパッケージで `sudo` が必要な場合があります)。
詳細は [`docs/setup-guides/one-click-bootstrap.md`](docs/setup-guides/one-click-bootstrap.md) を参照してください。
## クイックスタート
### HomebrewmacOS/Linuxbrew
```bash
brew install zeroclaw
```
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
cargo build --release --locked
cargo install --path . --force --locked
zeroclaw onboard --api-key sk-... --provider openrouter
zeroclaw onboard
zeroclaw agent -m "Hello, ZeroClaw!"
# default: 127.0.0.1:42617
zeroclaw gateway
zeroclaw daemon
```
## Subscription AuthOpenAI Codex / Claude Code
ZeroClaw はサブスクリプションベースのネイティブ認証プロファイルをサポートしています(マルチアカウント対応、保存時暗号化)。
- 保存先: `~/.zeroclaw/auth-profiles.json`
- 暗号化キー: `~/.zeroclaw/.secret_key`
- Profile ID 形式: `<provider>:<profile_name>`(例: `openai-codex:work`
OpenAI Codex OAuthChatGPT サブスクリプション):
```bash
# サーバー/ヘッドレス環境向け推奨
zeroclaw auth login --provider openai-codex --device-code
# Gemini OAuth
zeroclaw auth login --provider gemini --profile default
# ブラウザ/コールバックフロー(ペーストフォールバック付き)
zeroclaw auth login --provider openai-codex --profile default
zeroclaw auth paste-redirect --provider openai-codex --profile default
# Anthropic setup-token
zeroclaw auth paste-token --provider anthropic --profile default --auth-kind authorization
# チェック / リフレッシュ / プロファイル切り替え
# 確認 / リフレッシュ / プロファイル切替
zeroclaw auth status
zeroclaw auth refresh --provider openai-codex --profile default
zeroclaw auth use --provider openai-codex --profile work
```
# サブスクリプション認証でエージェントを実行
Claude Code / Anthropic setup-token:
```bash
# サブスクリプション/setup token の貼り付けAuthorization header モード)
zeroclaw auth paste-token --provider anthropic --profile default --auth-kind authorization
# エイリアスコマンド
zeroclaw auth setup-token --provider anthropic --profile default
```
Subscription auth で agent を実行:
```bash
zeroclaw agent --provider openai-codex -m "hello"
zeroclaw agent --provider openai-codex --auth-profile openai-codex:work -m "hello"
# Anthropic は API key と auth token の両方の環境変数をサポート:
# ANTHROPIC_AUTH_TOKEN, ANTHROPIC_OAUTH_TOKEN, ANTHROPIC_API_KEY
zeroclaw agent --provider anthropic -m "hello"
```
## エージェントワークスペース + スキル
## コントリビュート / ライセンス
ワークスペースルート:`~/.zeroclaw/workspace/`(設定で変更可能)。
注入されるプロンプトファイル:
- `IDENTITY.md` — エージェントの人格と役割
- `USER.md` — ユーザーコンテキストと好み
- `MEMORY.md` — 長期的な事実と教訓
- `AGENTS.md` — セッション規約と初期化ルール
- `SOUL.md` — コアアイデンティティと運用原則
スキル:`~/.zeroclaw/workspace/skills/<skill>/SKILL.md` または `SKILL.toml`
```bash
# インストール済みスキルの一覧
zeroclaw skills list
# gitからインストール
zeroclaw skills install https://github.com/user/my-skill.git
# インストール前のセキュリティ監査
zeroclaw skills audit https://github.com/user/my-skill.git
# スキルの削除
zeroclaw skills remove my-skill
```
## CLIコマンド
```bash
# ワークスペース管理
zeroclaw onboard # ガイド付きセットアップウィザード
zeroclaw status # デーモン/エージェントのステータス表示
zeroclaw doctor # システム診断を実行
# ゲートウェイ + デーモン
zeroclaw gateway # ゲートウェイサーバーを起動127.0.0.1:42617
zeroclaw daemon # フル自律ランタイムを起動
# エージェント
zeroclaw agent # インタラクティブチャットモード
zeroclaw agent -m "message" # 単一メッセージモード
# サービス管理
zeroclaw service install # OSサービスとしてインストールlaunchd/systemd
zeroclaw service start|stop|restart|status
# チャンネル
zeroclaw channel list # 設定済みチャンネルの一覧
zeroclaw channel doctor # チャンネルヘルスの確認
zeroclaw channel bind-telegram 123456789
# Cron + スケジューリング
zeroclaw cron list # スケジュールタスクの一覧
zeroclaw cron add "*/5 * * * *" --prompt "Check system health"
zeroclaw cron remove <id>
# メモリ
zeroclaw memory list # メモリエントリの一覧
zeroclaw memory get <key> # メモリの取得
zeroclaw memory stats # メモリ統計
# 認証プロファイル
zeroclaw auth login --provider <name>
zeroclaw auth status
zeroclaw auth use --provider <name> --profile <profile>
# ハードウェア周辺機器
zeroclaw hardware discover # 接続デバイスのスキャン
zeroclaw peripheral list # 接続周辺機器の一覧
zeroclaw peripheral flash # デバイスへのファームウェア書き込み
# 移行
zeroclaw migrate openclaw --dry-run
zeroclaw migrate openclaw
# シェル補完
source <(zeroclaw completions bash)
zeroclaw completions zsh > ~/.zfunc/_zeroclaw
```
完全なコマンドリファレンス:[docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
<!-- markdownlint-disable MD001 MD024 -->
## 前提条件
<details>
<summary><strong>Windows</strong></summary>
#### 必須
1. **Visual Studio Build Tools**MSVCリンカーとWindows SDKを提供
```powershell
winget install Microsoft.VisualStudio.2022.BuildTools
```
インストール時またはVisual Studioインストーラーで、**"Desktop development with C++"** ワークロードを選択してください。
2. **Rustツールチェーン**
```powershell
winget install Rustlang.Rustup
```
インストール後、新しいターミナルを開いて `rustup default stable` を実行し、stableツールチェーンがアクティブであることを確認してください。
3. 両方が動作していることを**確認**
```powershell
rustc --version
cargo --version
```
#### オプション
- **Docker Desktop** — [Dockerサンドボックスランタイム](#ランタイムサポート現在)`runtime.kind = "docker"`)を使用する場合のみ必要。`winget install Docker.DockerDesktop` でインストール。
</details>
<details>
<summary><strong>Linux / macOS</strong></summary>
#### 必須
1. **ビルドツール:**
- **Linux (Debian/Ubuntu):** `sudo apt install build-essential pkg-config`
- **Linux (Fedora/RHEL):** `sudo dnf group install development-tools && sudo dnf install pkg-config`
- **macOS:** Xcodeコマンドラインツールをインストール`xcode-select --install`
2. **Rustツールチェーン**
```bash
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
```
詳細は [rustup.rs](https://rustup.rs) を参照。
3. 両方が動作していることを**確認**
```bash
rustc --version
cargo --version
```
#### ワンラインインストーラー
または、上記のステップをスキップして、単一コマンドですべてをインストールシステム依存、Rust、ZeroClaw
```bash
curl -LsSf https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/install.sh | bash
```
#### コンパイルリソース要件
ソースからのビルドは、結果のバイナリを実行するよりも多くのリソースが必要です:
| リソース | 最小 | 推奨 |
| -------- | ---- | ---- |
| **RAM + swap** | 2 GB | 4 GB+ |
| **空きディスク** | 6 GB | 10 GB+ |
ホストが最小要件を下回る場合、プリビルドバイナリを使用してください:
```bash
./install.sh --prefer-prebuilt
```
ソースフォールバックなしのバイナリのみインストール:
```bash
./install.sh --prebuilt-only
```
#### オプション
- **Docker** — [Dockerサンドボックスランタイム](#ランタイムサポート現在)`runtime.kind = "docker"`)を使用する場合のみ必要。パッケージマネージャーまたは [docker.com](https://docs.docker.com/engine/install/) からインストール。
> **注意:** デフォルトの `cargo build --release``codegen-units=1` を使用してコンパイルのピーク圧力を低減します。強力なマシンでのビルド高速化には `cargo build --profile release-fast` を使用してください。
</details>
<!-- markdownlint-enable MD001 MD024 -->
### プリビルドバイナリ
リリースアセットは以下で公開されています:
- Linux: `x86_64`、`aarch64`、`armv7`
- macOS: `x86_64`、`aarch64`
- Windows: `x86_64`
最新アセットはこちらからダウンロード:
<https://github.com/zeroclaw-labs/zeroclaw/releases/latest>
## ドキュメント
オンボーディングフローを終えて、より深いリファレンスが必要な場合に使用してください。
- ナビゲーションと「どこに何があるか」は[ドキュメントインデックス](docs/README.md)から。
- [アーキテクチャ概要](docs/architecture.md)で完全なシステムモデルを確認。
- すべてのキーと例は[設定リファレンス](docs/reference/api/config-reference.md)で。
- [運用ランブック](docs/ops/operations-runbook.md)に従ってGatewayを実行。
- [ZeroClaw Onboard](#クイックスタートtldr)でガイド付きセットアップ。
- [トラブルシューティングガイド](docs/ops/troubleshooting.md)で一般的な障害をデバッグ。
- 何かを公開する前に[セキュリティガイダンス](docs/security/README.md)を確認。
### リファレンスドキュメント
- ドキュメントハブ:[docs/README.md](docs/README.md)
- 統一ドキュメント目次:[docs/SUMMARY.md](docs/SUMMARY.md)
- コマンドリファレンス:[docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
- 設定リファレンス:[docs/reference/api/config-reference.md](docs/reference/api/config-reference.md)
- プロバイダーリファレンス:[docs/reference/api/providers-reference.md](docs/reference/api/providers-reference.md)
- チャンネルリファレンス:[docs/reference/api/channels-reference.md](docs/reference/api/channels-reference.md)
- 運用ランブック:[docs/ops/operations-runbook.md](docs/ops/operations-runbook.md)
- トラブルシューティング:[docs/ops/troubleshooting.md](docs/ops/troubleshooting.md)
### コラボレーションドキュメント
- 貢献ガイド:[CONTRIBUTING.md](CONTRIBUTING.md)
- PRワークフローポリシー[docs/contributing/pr-workflow.md](docs/contributing/pr-workflow.md)
- CIワークフローガイド[docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- レビューアープレイブック:[docs/contributing/reviewer-playbook.md](docs/contributing/reviewer-playbook.md)
- セキュリティ開示ポリシー:[SECURITY.md](SECURITY.md)
- ドキュメントテンプレート:[docs/contributing/doc-template.md](docs/contributing/doc-template.md)
### デプロイ + 運用
- ネットワークデプロイガイド:[docs/ops/network-deployment.md](docs/ops/network-deployment.md)
- プロキシエージェントプレイブック:[docs/ops/proxy-agent-playbook.md](docs/ops/proxy-agent-playbook.md)
- ハードウェアガイド:[docs/hardware/README.md](docs/hardware/README.md)
## Smooth Crab 🦀
ZeroClawはsmooth crab 🦀のために構築されました。高速で効率的なAIアシスタント。Argenis De La Rosaとコミュニティによって構築されました。
- [zeroclawlabs.ai](https://zeroclawlabs.ai)
- [@zeroclawlabs](https://x.com/zeroclawlabs)
## ZeroClawを支援
ZeroClawがあなたの仕事に役立ち、継続的な開発を支援したい場合は、こちらから寄付できます
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=for-the-badge&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
### 🙏 特別な感謝
このオープンソースの取り組みにインスピレーションと活力を与えてくれたコミュニティと機関に心からの感謝を:
- **ハーバード大学** — 知的好奇心を育み、可能性の限界を押し広げてくれたことに感謝。
- **MIT** — オープンな知識、オープンソース、そしてテクノロジーは誰もがアクセスできるべきという信念を擁護してくれたことに感謝。
- **Sundai Club** — コミュニティ、エネルギー、そして意味のあるものを構築するための弛まぬ努力に感謝。
- **世界とその先** 🌍✨ — オープンソースを良い力にしているすべての貢献者、夢想家、構築者へ。これはあなたのためのものです。
最高のアイデアはあらゆるところから生まれるため、私たちはオープンに構築しています。これを読んでいるなら、あなたはその一部です。ようこそ。🦀❤️
## 貢献
ZeroClaw初心者ですか[`good first issue`](https://github.com/zeroclaw-labs/zeroclaw/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) ラベルの付いた課題を探してください — 始め方は[貢献ガイド](CONTRIBUTING.md#first-time-contributors)を参照。AI/vibe-coded PRも歓迎します🤖
[CONTRIBUTING.md](CONTRIBUTING.md) と [CLA.md](docs/contributing/cla.md) を参照。traitを実装してPRを提出してください
- CIワークフローガイド[docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- 新 `Provider``src/providers/`
- 新 `Channel``src/channels/`
- 新 `Observer``src/observability/`
- 新 `Tool``src/tools/`
- 新 `Memory``src/memory/`
- 新 `Tunnel``src/tunnel/`
- 新 `Peripheral``src/peripherals/`
- 新 `Skill``~/.zeroclaw/workspace/skills/<name>/`
- Contributing: [`CONTRIBUTING.md`](CONTRIBUTING.md)
- PR Workflow: [`docs/contributing/pr-workflow.md`](docs/contributing/pr-workflow.md)
- Reviewer Playbook: [`docs/contributing/reviewer-playbook.md`](docs/contributing/reviewer-playbook.md)
- License: MIT or Apache 2.0[`LICENSE-MIT`](LICENSE-MIT), [`LICENSE-APACHE`](LICENSE-APACHE), [`NOTICE`](NOTICE)
<!-- BEGIN:RECENT_CONTRIBUTORS -->
### 🌟 Recent Contributors (v0.3.1)
3 contributors shipped features, fixes, and improvements in this release cycle:
- **Argenis**
- **argenis de la rosa**
- **Claude Opus 4.6**
Thank you to everyone who opened issues, reviewed PRs, translated docs, and helped test. Every contribution matters. 🦀
<!-- END:RECENT_CONTRIBUTORS -->
## ⚠️ 公式リポジトリと偽装警告
**これがZeroClawの唯一の公式リポジトリです**
> https://github.com/zeroclaw-labs/zeroclaw
「ZeroClaw」を名乗る、またはZeroClaw Labsとの提携を示唆する他のリポジトリ、組織、ドメイン、パッケージは**無許可であり、本プロジェクトとは無関係です**。既知の無許可フォークは [TRADEMARK.md](docs/maintainers/trademark.md) に記載されます。
偽装や商標の悪用を見つけた場合は、[issueを作成](https://github.com/zeroclaw-labs/zeroclaw/issues)してください。
---
## ライセンス
ZeroClawは最大限のオープン性と貢献者保護のためにデュアルライセンスです
| ライセンス | 用途 |
|------------|------|
| [MIT](LICENSE-MIT) | オープンソース、研究、学術、個人使用 |
| [Apache 2.0](LICENSE-APACHE) | 特許保護、機関、商用デプロイ |
どちらのライセンスでも選択できます。**貢献者は両方のライセンスの権利を自動的に付与します** — 完全な貢献者契約については [CLA.md](docs/contributing/cla.md) を参照してください。
### 商標
**ZeroClaw** の名称とロゴはZeroClaw Labsの商標です。このライセンスは、推薦や提携を暗示するための使用許可を付与しません。許可された使用と禁止された使用については [TRADEMARK.md](docs/maintainers/trademark.md) を参照してください。
### 貢献者の保護
- あなたは貢献の**著作権を保持**します
- **特許付与**Apache 2.0)により、他の貢献者からの特許請求から保護されます
- あなたの貢献はコミット履歴と [NOTICE](NOTICE) に**永続的に帰属**されます
- 貢献により商標権は移転されません
---
**ZeroClaw** — ゼロオーバーヘッド。ゼロ妥協。どこでもデプロイ。何でも交換。🦀
## 貢献者
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors">
<img src="https://contrib.rocks/image?repo=zeroclaw-labs/zeroclaw" alt="ZeroClaw contributors" />
</a>
このリストはGitHub貢献者グラフから生成され、自動的に更新されます。
## Star履歴
<p align="center">
<a href="https://www.star-history.com/#zeroclaw-labs/zeroclaw&type=date&legend=top-left">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&theme=dark&legend=top-left" />
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
</picture>
</a>
</p>
詳細仕様全コマンド、アーキテクチャ、API 仕様、開発フロー)は英語版の [`README.md`](README.md) を参照してください。

View File

@ -1,8 +1,8 @@
<p align="center">
<img src="https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/docs/assets/zeroclaw-banner.png" alt="ZeroClaw" width="600" />
<img src="zeroclaw.png" alt="ZeroClaw" width="200" />
</p>
<h1 align="center">🦀 ZeroClaw — 개인 AI 어시스턴트</h1>
<h1 align="center">ZeroClaw 🦀</h1>
<p align="center">
<strong>오버헤드 없음. 타협 없음. 100% Rust. 100% 독립적.</strong><br>
@ -11,24 +11,21 @@
<p align="center">
<a href="LICENSE-APACHE"><img src="https://img.shields.io/badge/license-MIT%20OR%20Apache%202.0-blue.svg" alt="License: MIT OR Apache-2.0" /></a>
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors"><img src="https://img.shields.io/github/contributors/zeroclaw-labs/zeroclaw?color=green" alt="Contributors" /></a>
<a href="NOTICE"><img src="https://img.shields.io/badge/contributors-27+-green.svg" alt="Contributors" /></a>
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
<a href="https://x.com/zeroclawlabs?s=21"><img src="https://img.shields.io/badge/X-%40zeroclawlabs-000000?style=flat&logo=x&logoColor=white" alt="X: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclawlabs"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
<a href="https://discord.com/invite/wDshRVqRjx"><img src="https://img.shields.io/badge/Discord-Join-5865F2?style=flat&logo=discord&logoColor=white" alt="Discord" /></a>
<a href="https://www.instagram.com/therealzeroclaw"><img src="https://img.shields.io/badge/Instagram-%40therealzeroclaw-E4405F?style=flat&logo=instagram&logoColor=white" alt="Instagram: @therealzeroclaw" /></a>
<a href="https://www.tiktok.com/@zeroclawlabs"><img src="https://img.shields.io/badge/TikTok-%40zeroclawlabs-000000?style=flat&logo=tiktok&logoColor=white" alt="TikTok: @zeroclawlabs" /></a>
<a href="https://www.rednote.com/user/profile/69b735e6000000002603927e"><img src="https://img.shields.io/badge/RedNote-Official-FF2442?style=flat" alt="RedNote" /></a>
<a href="https://zeroclawlabs.cn/group.jpg"><img src="https://img.shields.io/badge/WeChat-Group-B7D7A8?logo=wechat&logoColor=white" alt="WeChat Group" /></a>
<a href="https://www.xiaohongshu.com/user/profile/67cbfc43000000000d008307?xsec_token=AB73VnYnGNx5y36EtnnZfGmAmS-6Wzv8WMuGpfwfkg6Yc%3D&xsec_source=pc_search"><img src="https://img.shields.io/badge/Xiaohongshu-Official-FF2442?style=flat" alt="Xiaohongshu: Official" /></a>
<a href="https://t.me/zeroclawlabs"><img src="https://img.shields.io/badge/Telegram-%40zeroclawlabs-26A5E4?style=flat&logo=telegram&logoColor=white" alt="Telegram: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclaw"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
<a href="https://www.reddit.com/r/zeroclawlabs/"><img src="https://img.shields.io/badge/Reddit-r%2Fzeroclawlabs-FF4500?style=flat&logo=reddit&logoColor=white" alt="Reddit: r/zeroclawlabs" /></a>
</p>
<p align="center">
Harvard, MIT, 그리고 Sundai.Club 커뮤니티의 학생들과 멤버들이 만들었습니다.
</p>
<p align="center">
🌐 <strong>언어:</strong>
<a href="README.md">🇺🇸 English</a> ·
🌐 <strong>언어:</strong><a href="README.md">🇺🇸 English</a> ·
<a href="README.zh-CN.md">🇨🇳 简体中文</a> ·
<a href="README.ja.md">🇯🇵 日本語</a> ·
<a href="README.ko.md">🇰🇷 한국어</a> ·
@ -61,191 +58,90 @@ Harvard, MIT, 그리고 Sundai.Club 커뮤니티의 학생들과 멤버들이
<a href="README.nb.md">🇳🇴 Norsk</a>
</p>
ZeroClaw는 자신의 기기에서 실행하는 개인 AI 어시스턴트입니다. 이미 사용하고 있는 채널(WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work 등)에서 응답합니다. 실시간 제어를 위한 웹 대시보드가 있으며 하드웨어 주변기기(ESP32, STM32, Arduino, Raspberry Pi)에 연결할 수 있습니다. Gateway는 단순한 제어 평면이며, 제품은 어시스턴트 자체입니다.
로컬에서 빠르고 항상 켜져 있는 개인 단일 사용자 어시스턴트를 원한다면 바로 이것입니다.
<p align="center">
<a href="https://zeroclawlabs.ai">웹사이트</a> ·
<a href="docs/README.md">문서</a> ·
<a href="docs/architecture.md">아키텍처</a> ·
<a href="#빠른-시작-tldr">시작하기</a> ·
<a href="#openclaw에서-마이그레이션">OpenClaw에서 마이그레이션</a> ·
<a href="docs/ops/troubleshooting.md">문제 해결</a> ·
<a href="https://discord.com/invite/wDshRVqRjx">Discord</a>
<a href="#빠른-시작">빠른 시작</a> |
<a href="bootstrap.sh">원클릭 설정</a> |
<a href="docs/README.md">문서 허브</a> |
<a href="docs/SUMMARY.md">문서 목차</a>
</p>
> **권장 설정:** 터미널에서 `zeroclaw onboard`를 실행하세요. ZeroClaw Onboard가 gateway, workspace, 채널, 제공자 설정을 단계별로 안내합니다. macOS, Linux, Windows(WSL2)에서 작동하는 권장 설정 경로입니다. 새로 설치하시나요? 여기서 시작하세요: [시작하기](#빠른-시작-tldr)
<p align="center">
<strong>빠른 접근:</strong>
<a href="docs/reference/README.md">참조</a> ·
<a href="docs/operations/README.md">운영</a> ·
<a href="docs/troubleshooting.md">문제 해결</a> ·
<a href="docs/security/README.md">보안</a> ·
<a href="docs/hardware/README.md">하드웨어</a> ·
<a href="docs/contributing/README.md">기여하기</a>
</p>
### Subscription Auth (OAuth)
<p align="center">
<strong>빠르고 가벼우며 완전히 자율적인 AI 어시스턴트 인프라</strong><br />
어디서나 배포. 무엇이든 교체.
</p>
- **OpenAI Codex** (ChatGPT 구독)
- **Gemini** (Google OAuth)
- **Anthropic** (API 키 또는 인증 토큰)
<p align="center">
ZeroClaw는 에이전트 워크플로우를 위한 <strong>런타임 운영체제</strong>입니다 — 모델, 도구, 메모리, 실행을 추상화하여 한 번 구축하고 어디서나 실행할 수 있는 인프라입니다.
</p>
모델 참고: 많은 제공자/모델이 지원되지만, 최상의 경험을 위해 사용 가능한 최신 세대의 가장 강력한 모델을 사용하세요. [온보딩](#빠른-시작-tldr)을 참조하세요.
모델 구성 + CLI: [Providers reference](docs/reference/api/providers-reference.md)
인증 프로필 교체(OAuth vs API 키) + 장애 조치: [Model failover](docs/reference/api/providers-reference.md)
## 설치 (권장)
런타임: Rust stable 툴체인. 단일 바이너리, 런타임 의존성 없음.
### Homebrew (macOS/Linuxbrew)
```bash
brew install zeroclaw
```
### 원클릭 부트스트랩
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./install.sh
```
`zeroclaw onboard`는 설치 후 자동으로 실행되어 workspace와 제공자를 구성합니다.
## 빠른 시작 (TL;DR)
전체 초보자 가이드(인증, 페어링, 채널): [시작하기](docs/setup-guides/one-click-bootstrap.md)
```bash
# 설치 + 온보드
./install.sh --api-key "sk-..." --provider openrouter
# Gateway 시작 (webhook 서버 + 웹 대시보드)
zeroclaw gateway # 기본값: 127.0.0.1:42617
zeroclaw gateway --port 0 # 랜덤 포트 (보안 강화)
# 어시스턴트와 대화
zeroclaw agent -m "Hello, ZeroClaw!"
# 대화형 모드
zeroclaw agent
# 완전 자율 런타임 시작 (gateway + 채널 + cron + hands)
zeroclaw daemon
# 상태 확인
zeroclaw status
# 진단 실행
zeroclaw doctor
```
업그레이드 하셨나요? 업데이트 후 `zeroclaw doctor`를 실행하세요.
### 소스에서 빌드 (개발용)
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
cargo build --release --locked
cargo install --path . --force --locked
zeroclaw onboard
```
> **개발 폴백 (글로벌 설치 없이):** 명령 앞에 `cargo run --release --`를 붙이세요 (예: `cargo run --release -- status`).
## OpenClaw에서 마이그레이션
ZeroClaw는 OpenClaw workspace, 메모리, 구성을 가져올 수 있습니다:
```bash
# 마이그레이션 대상 미리보기 (안전, 읽기 전용)
zeroclaw migrate openclaw --dry-run
# 마이그레이션 실행
zeroclaw migrate openclaw
```
이것은 메모리 항목, workspace 파일, 구성을 `~/.openclaw/`에서 `~/.zeroclaw/`로 마이그레이션합니다. 구성은 JSON에서 TOML로 자동 변환됩니다.
## 보안 기본값 (DM 접근)
ZeroClaw는 실제 메시징 서비스에 연결됩니다. 수신 DM을 신뢰할 수 없는 입력으로 취급하세요.
전체 보안 가이드: [SECURITY.md](SECURITY.md)
모든 채널의 기본 동작:
- **DM 페어링** (기본값): 알 수 없는 발신자는 짧은 페어링 코드를 받으며 봇은 메시지를 처리하지 않습니다.
- 승인: `zeroclaw pairing approve <channel> <code>` (발신자가 로컬 허용 목록에 추가됩니다).
- 공개 수신 DM은 `config.toml`에서 명시적 옵트인이 필요합니다.
- `zeroclaw doctor`를 실행하여 위험하거나 잘못 구성된 DM 정책을 확인하세요.
**자율성 수준:**
| 수준 | 동작 |
|-------|----------|
| `ReadOnly` | 에이전트가 관찰만 할 수 있고 행동하지 않음 |
| `Supervised` (기본값) | 에이전트가 중/고위험 작업에 대해 승인을 받고 행동 |
| `Full` | 에이전트가 정책 범위 내에서 자율적으로 행동 |
**샌드박싱 계층:** workspace 격리, 경로 탐색 차단, 명령 허용 목록, 금지 경로 (`/etc`, `/root`, `~/.ssh`), 속도 제한 (시간당 최대 작업 수, 일일 비용 상한).
<p align="center"><code>트레이트 기반 아키텍처 · 기본 보안 런타임 · 교체 가능한 제공자/채널/도구 · 모든 것이 플러그 가능</code></p>
<!-- BEGIN:WHATS_NEW -->
### 🚀 What's New in v0.3.1 (March 2026)
| Area | Highlights |
|---|---|
| ci | add Termux (aarch64-linux-android) release target |
<!-- END:WHATS_NEW -->
### 📢 공지사항
이 표를 사용하여 중요한 공지사항(호환성 변경, 보안 권고, 유지보수 기간, 릴리스 차단)을 확인하세요.
이 표를 사용하여 중요한 공지사항(호환성 변경, 보안 공지, 유지보수 기간, 버전 차단)을 확인하세요.
| 날짜 (UTC) | 수준 | 공지 | 조치 |
| ---------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 2026-02-19 | _치명적_ | 우리는 `openagen/zeroclaw`, `zeroclaw.org` 또는 `zeroclaw.net` **관련이 없습니다**. `zeroclaw.org``zeroclaw.net` 도메인은 현재 `openagen/zeroclaw` 포크를 가리키고 있으며, 해당 도메인/저장소는 우리의 공식 웹사이트/프로젝트를 사칭하고 있습니다. | 해당 소스의 정보, 바이너리, 모금, 공지를 신뢰하지 마세요. [이 저장소](https://github.com/zeroclaw-labs/zeroclaw)와 검증된 소셜 계정만 사용하세요. |
| 2026-02-21 | _중요_ | 공식 웹사이트가 이제 온라인입니다: [zeroclawlabs.ai](https://zeroclawlabs.ai). 기다려주셔서 감사합니다. 사칭 시도가 여전히 감지되고 있으므로, 공식 채널을 통해 게시되지 않은 ZeroClaw 이름의 투자나 모금 활동에 참여하지 **마세요**. | [이 저장소](https://github.com/zeroclaw-labs/zeroclaw)를 유일한 진실의 원천으로 사용하세요. [X (@zeroclawlabs)](https://x.com/zeroclawlabs?s=21), [Facebook (그룹)](https://www.facebook.com/groups/zeroclawlabs), [Reddit (r/zeroclawlabs)](https://www.reddit.com/r/zeroclawlabs/) 팔로우하여 공식 업데이트를 받으세요. |
| 2026-02-19 | _중요_ | Anthropic이 2026-02-19에 인증 및 자격증명 사용 약관을 업데이트했습니다. Claude Code OAuth 토큰(Free, Pro, Max)은 Claude Code와 Claude.ai 전용입니다. 다른 제품, 도구 또는 서비스(Agent SDK 포함)에서 Claude Free/Pro/Max OAuth 토큰을 사용하는 것은 허용되지 않으며 소비자 이용약관을 위반할 수 있습니다. | 잠재적 손실을 방지하기 위해 일시적으로 Claude Code OAuth 통합을 피하세요. 원본 조항: [Authentication and Credential Use](https://code.claude.com/docs/en/legal-and-compliance#authentication-and-credential-use). |
| 날짜 (UTC) | 수준 | 공지 | 조치 |
| ---------- | ----------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 2026-02-19 | _중요_ | 우리는 `openagen/zeroclaw` 또는 `zeroclaw.org`**관련이 없습니다**. `zeroclaw.org` 도메인은 현재 `openagen/zeroclaw` 포크를 가리키고 있으며, 이 도메인/저장소는 우리의 공식 웹사이트/프로젝트를 사칭하고 있습니다. | 이 소스의 정보, 바이너리, 펀딩, 공지를 신뢰하지 마세요. [이 저장소](https://github.com/zeroclaw-labs/zeroclaw)와 우리의 확인된 소셜 계정만 사용하세요. |
| 2026-02-21 | _중요_ | 우리의 공식 웹사이트가 이제 온라인입니다: [zeroclawlabs.ai](https://zeroclawlabs.ai). 기다려주셔서 감사합니다. 여전히 사칭 시도가 감지되고 있습니다: 공식 채널을 통해 게시되지 않은 ZeroClaw 이름의 모든 투자/펀딩 활동에 참여하지 마세요. | [이 저장소](https://github.com/zeroclaw-labs/zeroclaw)를 유일한 진실의 원천으로 사용하세요. [X (@zeroclawlabs)](https://x.com/zeroclawlabs?s=21), [Telegram (@zeroclawlabs)](https://t.me/zeroclawlabs), [Facebook (그룹)](https://www.facebook.com/groups/zeroclaw), [Reddit (r/zeroclawlabs)](https://www.reddit.com/r/zeroclawlabs/), 그리고 [Xiaohongshu](https://www.xiaohongshu.com/user/profile/67cbfc43000000000d008307?xsec_token=AB73VnYnGNx5y36EtnnZfGmAmS-6Wzv8WMuGpfwfkg6Yc%3D&xsec_source=pc_search)를 팔로우하여 공식 업데이트를 받으세요. |
| 2026-02-19 | _중요_ | Anthropic이 2026-02-19에 인증 및 자격증명 사용 약관을 업데이트했습니다. OAuth 인증(Free, Pro, Max)은 Claude Code 및 Claude.ai 전용입니다. 다른 제품, 도구 또는 서비스(Agent SDK 포함)에서 Claude Free/Pro/Max OAuth 토큰을 사용하는 것은 허용되지 않으며 소비자 이용약관을 위반할 수 있습니다. | 잠재적인 손실을 방지하기 위해 일시적으로 Claude Code OAuth 통합을 피하세요. 원본 조항: [Authentication and Credential Use](https://code.claude.com/docs/en/legal-and-compliance#authentication-and-credential-use). |
## 주요 특징
### ✨ 기능
- **기본 경량 런타임** — 일반적인 CLI 및 상태 워크플로우가 릴리스 빌드에서 몇 메가바이트의 메모리 범위 내에서 실행됩니다.
- **비용 효율적인 배포** — $10 보드와 소규모 클라우드 인스턴스를 위해 설계되었으며, 무거운 런타임 의존성이 없습니다.
- **빠른 콜드 스타트** — 단일 바이너리 Rust 런타임으로 명령 및 데몬 시작이 거의 즉각적입니다.
- **이식 가능한 아키텍처** — 교체 가능한 제공자/채널/도구로 ARM, x86, RISC-V에서 하나의 바이너리.
- **로컬 우선 Gateway** — 세션, 채널, 도구, cron, SOP, 이벤트를 위한 단일 제어 평면.
- **멀티 채널 수신함** — WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WebSocket 등.
- **멀티 에이전트 오케스트레이션 (Hands)** — 스케줄에 따라 실행되고 시간이 지남에 따라 더 똑똑해지는 자율 에이전트 스웜.
- **표준 운영 절차 (SOPs)** — MQTT, webhook, cron, 주변기기 트리거를 통한 이벤트 기반 워크플로우 자동화.
- **웹 대시보드** — 실시간 채팅, 메모리 브라우저, 구성 편집기, cron 관리자, 도구 검사기를 갖춘 React 19 + Vite 웹 UI.
- **하드웨어 주변기기**`Peripheral` 트레이트를 통한 ESP32, STM32 Nucleo, Arduino, Raspberry Pi GPIO.
- **일급 도구** — shell, file I/O, browser, git, web fetch/search, MCP, Jira, Notion, Google Workspace 등 70개 이상.
- **라이프사이클 훅** — 모든 단계에서 LLM 호출, 도구 실행, 메시지를 가로채고 수정.
- **스킬 플랫폼** — 번들, 커뮤니티, workspace 스킬과 보안 감사.
- **터널 지원** — 원격 접속을 위한 Cloudflare, Tailscale, ngrok, OpenVPN, 사용자 정의 터널.
- 🏎️ **기본 경량 런타임:** 일반적인 CLI 워크플로우와 상태 명령이 프로덕션 빌드에서 몇 메가바이트의 메모리 공간 내에서 실행됩니다.
- 💰 **비용 효율적인 배포:** 무거운 런타임 의존성 없이 저비용 보드 및 소규모 클라우드 인스턴스를 위해 설계되었습니다.
- ⚡ **빠른 콜드 스타트:** 단일 Rust 바이너리 런타임이 일상적인 운영을 위해 거의 즉각적인 명령 및 데몬 시작을 유지합니다.
- 🌍 **이식 가능한 아키텍처:** 교체 가능한 제공자/채널/도구로 ARM, x86, RISC-V에서 단일 바이너리 워크플로우.
### 팀이 ZeroClaw를 선택하는 이유
### 왜 팀들이 ZeroClaw를 선택하나요
- **기본 경량:** 작은 Rust 바이너리, 빠른 시작, 낮은 메모리 사용.
- **기본 보안:** 페어링, 엄격한 샌드박싱, 명시적 허용 목록, workspace 범위 지정.
- **완전히 교체 가능:** 핵심 시스템이 트레이트(제공자, 채널, 도구, 메모리, 터널).
- **기본 경량:** 작은 Rust 바이너리, 빠른 시작, 낮은 메모리 공간.
- **기본 보안:** 페어링, 엄격한 샌드박싱, 명시적 허용 목록, 작업공간 범위.
- **완전히 교체 가능:** 핵심 시스템이 트레이트입니다(제공자, 채널, 도구, 메모리, 터널).
- **벤더 락인 없음:** OpenAI 호환 제공자 지원 + 플러그 가능한 사용자 정의 엔드포인트.
## 벤치마크 스냅샷 (ZeroClaw vs OpenClaw, 재현 가능)
로컬 머신 빠른 벤치마크 (macOS arm64, 2026년 2월) 0.8GHz 엣지 하드웨어로 정규화.
로컬 머신에서 빠른 벤치마크(macOS arm64, 2026년 2월) 0.8 GHz 엣지 하드웨어로 정규화됨.
| | OpenClaw | NanoBot | PicoClaw | ZeroClaw 🦀 |
| ------------------------- | ------------- | -------------- | --------------- | -------------------- |
| **언어** | TypeScript | Python | Go | **Rust** |
| **RAM** | > 1GB | > 100MB | < 10MB | **< 5MB** |
| **시작 (0.8GHz 코어)** | > 500s | > 30s | < 1s | **< 10ms** |
| **바이너리 크기** | ~28MB (dist) | N/A (Scripts) | ~8MB | **~8.8 MB** |
| **비용** | Mac Mini $599 | Linux SBC ~$50 | Linux Board $10 | **모든 하드웨어 $10** |
| | OpenClaw | NanoBot | PicoClaw | ZeroClaw 🦀 |
| ---------------------------- | ------------- | -------------- | --------------- | --------------------- |
| **언어** | TypeScript | Python | Go | **Rust** |
| **RAM** | > 1 GB | > 100 MB | < 10 MB | **< 5 MB** |
| **시작 (0.8 GHz 코어)** | > 500s | > 30s | < 1s | **< 10ms** |
| **바이너리 크기** | ~28 MB (dist) | N/A (Scripts) | ~8 MB | **3.4 MB** |
| **비용** | Mac Mini $599 | Linux SBC ~$50 | Linux 보드 $10 | **모든 하드웨어 $10** |
> 참고: ZeroClaw 결과는 `/usr/bin/time -l`을 사용한 릴리스 빌드에서 측정되었습니다. OpenClaw는 Node.js 런타임이 필요하며(일반적으로 ~390MB 추가 메모리 오버헤드), NanoBot은 Python 런타임이 필요합니다. PicoClaw와 ZeroClaw는 정적 바이너리입니다. 위 RAM 수치는 런타임 메모리이며, 빌드 시 컴파일 요구사항은 더 높습니다.
> 참고: ZeroClaw 결과는 `/usr/bin/time -l`을 사용한 프로덕션 빌드에서 측정되었습니다. OpenClaw는 Node.js 런타임이 필요하며(일반적으로 ~390MB 추가 메모리 오버헤드), NanoBot은 Python 런타임이 필요합니다. PicoClaw와 ZeroClaw는 정적 바이너리입니다. 위 RAM 수치는 런타임 메모리이며, 빌드 시간 컴파일 요구사항은 더 높습니다.
<p align="center">
<img src="docs/assets/zeroclaw-comparison.jpeg" alt="ZeroClaw vs OpenClaw Comparison" width="800" />
<img src="zero-claw.jpeg" alt="ZeroClaw vs OpenClaw 비교" width="800" />
</p>
### 재현 가능한 로컬 측정
벤치마크 주장은 코드와 툴체인의 발전에 따라 달라질 수 있으므로 항상 현재 빌드를 로컬에서 측정하세요:
```bash
cargo build --release
ls -lh target/release/zeroclaw
@ -254,266 +150,20 @@ ls -lh target/release/zeroclaw
/usr/bin/time -l target/release/zeroclaw status
```
## 지금까지 구축한 모든 것
샘플 예시(macOS arm64, 2026년 2월 18일 측정):
### 핵심 플랫폼
- 세션, 프레즌스, 구성, cron, webhook, 웹 대시보드, 페어링을 갖춘 Gateway HTTP/WS/SSE 제어 평면.
- CLI 표면: `gateway`, `agent`, `onboard`, `doctor`, `status`, `service`, `migrate`, `auth`, `cron`, `channel`, `skills`.
- 도구 디스패치, 프롬프트 구성, 메시지 분류, 메모리 로딩을 갖춘 에이전트 오케스트레이션 루프.
- 보안 정책 적용, 자율성 수준, 승인 게이팅을 갖춘 세션 모델.
- 20개 이상의 LLM 백엔드에 걸쳐 장애 조치, 재시도, 모델 라우팅을 갖춘 탄력적 제공자 래퍼.
### 채널
채널: WhatsApp (네이티브), Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, DingTalk, Lark, Mattermost, Nextcloud Talk, Nostr, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WATI, Mochat, Linq, Notion, WebSocket, ClawdTalk.
기능 게이트: Matrix (`channel-matrix`), Lark (`channel-lark`), Nostr (`channel-nostr`).
### 웹 대시보드
Gateway에서 직접 제공하는 React 19 + Vite 6 + Tailwind CSS 4 웹 대시보드:
- **대시보드** — 시스템 개요, 상태, 가동 시간, 비용 추적
- **에이전트 채팅** — 에이전트와의 대화형 채팅
- **메모리** — 메모리 항목 탐색 및 관리
- **구성** — 구성 보기 및 편집
- **Cron** — 예약된 작업 관리
- **도구** — 사용 가능한 도구 탐색
- **로그** — 에이전트 활동 로그 보기
- **비용** — 토큰 사용량 및 비용 추적
- **Doctor** — 시스템 상태 진단
- **통합** — 통합 상태 및 설정
- **페어링** — 기기 페어링 관리
### 펌웨어 대상
| 대상 | 플랫폼 | 용도 |
|--------|----------|---------|
| ESP32 | Espressif ESP32 | 무선 주변기기 에이전트 |
| ESP32-UI | ESP32 + Display | 시각적 인터페이스를 갖춘 에이전트 |
| STM32 Nucleo | STM32 (ARM Cortex-M) | 산업용 주변기기 |
| Arduino | Arduino | 기본 센서/액추에이터 브릿지 |
| Uno Q Bridge | Arduino Uno | 에이전트와의 시리얼 브릿지 |
### 도구 + 자동화
- **코어:** shell, file read/write/edit, git operations, glob search, content search
- **웹:** browser control, web fetch, web search, screenshot, image info, PDF read
- **통합:** Jira, Notion, Google Workspace, Microsoft 365, LinkedIn, Composio, Pushover
- **MCP:** Model Context Protocol tool wrapper + deferred tool sets
- **스케줄링:** cron add/remove/update/run, schedule tool
- **메모리:** recall, store, forget, knowledge, project intel
- **고급:** delegate (agent-to-agent), swarm, model switch/routing, security ops, cloud ops
- **하드웨어:** board info, memory map, memory read (feature-gated)
### 런타임 + 안전
- **자율성 수준:** ReadOnly, Supervised (기본값), Full.
- **샌드박싱:** workspace 격리, 경로 탐색 차단, 명령 허용 목록, 금지 경로, Landlock (Linux), Bubblewrap.
- **속도 제한:** 시간당 최대 작업 수, 일일 최대 비용 (구성 가능).
- **승인 게이팅:** 중/고위험 작업에 대한 대화형 승인.
- **긴급 정지:** 긴급 종료 기능.
- **129개 이상의 보안 테스트** 자동화된 CI에서.
### 운영 + 패키징
- Gateway에서 직접 제공하는 웹 대시보드.
- 터널 지원: Cloudflare, Tailscale, ngrok, OpenVPN, custom command.
- 컨테이너화된 실행을 위한 Docker 런타임 어댑터.
- CI/CD: beta (push 시 자동) → stable (수동 디스패치) → Docker, crates.io, Scoop, AUR, Homebrew, tweet.
- Linux (x86_64, aarch64, armv7), macOS (x86_64, aarch64), Windows (x86_64)용 사전 빌드 바이너리.
## 구성
최소 `~/.zeroclaw/config.toml`:
```toml
default_provider = "anthropic"
api_key = "sk-ant-..."
```
전체 구성 참조: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md).
### 채널 구성
**Telegram:**
```toml
[channels.telegram]
bot_token = "123456:ABC-DEF..."
```
**Discord:**
```toml
[channels.discord]
token = "your-bot-token"
```
**Slack:**
```toml
[channels.slack]
bot_token = "xoxb-..."
app_token = "xapp-..."
```
**WhatsApp:**
```toml
[channels.whatsapp]
enabled = true
```
**Matrix:**
```toml
[channels.matrix]
homeserver_url = "https://matrix.org"
username = "@bot:matrix.org"
password = "..."
```
**Signal:**
```toml
[channels.signal]
phone_number = "+1234567890"
```
### 터널 구성
```toml
[tunnel]
kind = "cloudflare" # 또는 "tailscale", "ngrok", "openvpn", "custom", "none"
```
상세 정보: [Channel reference](docs/reference/api/channels-reference.md) · [Config reference](docs/reference/api/config-reference.md)
### 현재 런타임 지원
- **`native`** (기본값) — 직접 프로세스 실행, 가장 빠른 경로, 신뢰할 수 있는 환경에 적합.
- **`docker`** — 완전한 컨테이너 격리, 강화된 보안 정책, Docker 필요.
엄격한 샌드박싱이나 네트워크 격리를 위해 `runtime.kind = "docker"`를 설정하세요.
## Subscription Auth (OpenAI Codex / Claude Code / Gemini)
ZeroClaw는 구독 기반 인증 프로필(다중 계정, 저장 시 암호화)을 지원합니다.
- 저장 파일: `~/.zeroclaw/auth-profiles.json`
- 암호화 키: `~/.zeroclaw/.secret_key`
- 프로필 id 형식: `<provider>:<profile_name>` (예: `openai-codex:work`)
```bash
# OpenAI Codex OAuth (ChatGPT 구독)
zeroclaw auth login --provider openai-codex --device-code
# Gemini OAuth
zeroclaw auth login --provider gemini --profile default
# Anthropic setup-token
zeroclaw auth paste-token --provider anthropic --profile default --auth-kind authorization
# 확인 / 갱신 / 프로필 전환
zeroclaw auth status
zeroclaw auth refresh --provider openai-codex --profile default
zeroclaw auth use --provider openai-codex --profile work
# 구독 인증으로 에이전트 실행
zeroclaw agent --provider openai-codex -m "hello"
zeroclaw agent --provider anthropic -m "hello"
```
## 에이전트 workspace + 스킬
Workspace 루트: `~/.zeroclaw/workspace/` (구성을 통해 변경 가능).
주입되는 프롬프트 파일:
- `IDENTITY.md` — 에이전트 성격과 역할
- `USER.md` — 사용자 컨텍스트와 선호도
- `MEMORY.md` — 장기 사실과 교훈
- `AGENTS.md` — 세션 규칙과 초기화 규칙
- `SOUL.md` — 핵심 정체성과 운영 원칙
스킬: `~/.zeroclaw/workspace/skills/<skill>/SKILL.md` 또는 `SKILL.toml`.
```bash
# 설치된 스킬 목록
zeroclaw skills list
# git에서 설치
zeroclaw skills install https://github.com/user/my-skill.git
# 설치 전 보안 감사
zeroclaw skills audit https://github.com/user/my-skill.git
# 스킬 제거
zeroclaw skills remove my-skill
```
## CLI 명령어
```bash
# Workspace 관리
zeroclaw onboard # 안내된 설정 마법사
zeroclaw status # 데몬/에이전트 상태 표시
zeroclaw doctor # 시스템 진단 실행
# Gateway + 데몬
zeroclaw gateway # Gateway 서버 시작 (127.0.0.1:42617)
zeroclaw daemon # 완전 자율 런타임 시작
# 에이전트
zeroclaw agent # 대화형 채팅 모드
zeroclaw agent -m "message" # 단일 메시지 모드
# 서비스 관리
zeroclaw service install # OS 서비스로 설치 (launchd/systemd)
zeroclaw service start|stop|restart|status
# 채널
zeroclaw channel list # 구성된 채널 목록
zeroclaw channel doctor # 채널 상태 확인
zeroclaw channel bind-telegram 123456789
# Cron + 스케줄링
zeroclaw cron list # 예약된 작업 목록
zeroclaw cron add "*/5 * * * *" --prompt "Check system health"
zeroclaw cron remove <id>
# 메모리
zeroclaw memory list # 메모리 항목 목록
zeroclaw memory get <key> # 메모리 조회
zeroclaw memory stats # 메모리 통계
# 인증 프로필
zeroclaw auth login --provider <name>
zeroclaw auth status
zeroclaw auth use --provider <name> --profile <profile>
# 하드웨어 주변기기
zeroclaw hardware discover # 연결된 기기 스캔
zeroclaw peripheral list # 연결된 주변기기 목록
zeroclaw peripheral flash # 기기에 펌웨어 플래시
# 마이그레이션
zeroclaw migrate openclaw --dry-run
zeroclaw migrate openclaw
# 셸 자동완성
source <(zeroclaw completions bash)
zeroclaw completions zsh > ~/.zfunc/_zeroclaw
```
전체 명령어 참조: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
<!-- markdownlint-disable MD001 MD024 -->
- 릴리스 바이너리 크기: `8.8M`
- `zeroclaw --help`: 실제 시간 약 `0.02s`, 최대 메모리 공간 ~`3.9 MB`
- `zeroclaw status`: 실제 시간 약 `0.01s`, 최대 메모리 공간 ~`4.1 MB`
## 사전 요구사항
<details>
<summary><strong>Windows</strong></summary>
#### 필수
### Windows — 필수
1. **Visual Studio Build Tools** (MSVC 링커와 Windows SDK 제공):
1. **Visual Studio Build Tools**(MSVC 링커 및 Windows SDK 제공):
```powershell
winget install Microsoft.VisualStudio.2022.BuildTools
@ -527,7 +177,7 @@ zeroclaw completions zsh > ~/.zfunc/_zeroclaw
winget install Rustlang.Rustup
```
설치 후 새 터미널을 열고 `rustup default stable`을 실행하여 stable 툴체인이 활성화되었는지 확인하세요.
설치 후, 새 터미널을 열고 `rustup default stable`을 실행하여 안정적인 툴체인이 활성화되어 있는지 확인하세요.
3. **확인:** 둘 다 작동하는지 확인:
```powershell
@ -535,18 +185,18 @@ zeroclaw completions zsh > ~/.zfunc/_zeroclaw
cargo --version
```
#### 선택사항
### Windows — 선택사항
- **Docker Desktop** — [Docker 샌드박스 런타임](#현재-런타임-지원)을 사용하는 경우에만 필요 (`runtime.kind = "docker"`). `winget install Docker.DockerDesktop`으로 설치.
- **Docker Desktop** — [Docker 샌드박스 런타임](#현재-런타임-지원)을 사용하는 경우에만 필요(`runtime.kind = "docker"`). `winget install Docker.DockerDesktop`을 통해 설치.
</details>
<details>
<summary><strong>Linux / macOS</strong></summary>
#### 필수
### Linux / macOS — 필수
1. **빌드 필수 도구:**
1. **필수 빌드 도구:**
- **Linux (Debian/Ubuntu):** `sudo apt install build-essential pkg-config`
- **Linux (Fedora/RHEL):** `sudo dnf group install development-tools && sudo dnf install pkg-config`
- **macOS:** Xcode Command Line Tools 설치: `xcode-select --install`
@ -559,152 +209,243 @@ zeroclaw completions zsh > ~/.zfunc/_zeroclaw
자세한 내용은 [rustup.rs](https://rustup.rs)를 참조하세요.
3. **확인:** 둘 다 작동하는지 확인:
3. **확인:**
```bash
rustc --version
cargo --version
```
#### 한 줄 설치
### Linux / macOS — 선택사항
위 단계를 건너뛰고 모든 것(시스템 의존성, Rust, ZeroClaw)을 한 번에 설치:
```bash
curl -LsSf https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/install.sh | bash
```
#### 컴파일 리소스 요구사항
소스에서 빌드하려면 결과 바이너리를 실행하는 것보다 더 많은 리소스가 필요합니다:
| 리소스 | 최소 | 권장 |
| -------------- | ------- | ----------- |
| **RAM + swap** | 2 GB | 4 GB+ |
| **여유 디스크** | 6 GB | 10 GB+ |
호스트가 최소 사양 미만인 경우 사전 빌드 바이너리를 사용하세요:
```bash
./install.sh --prefer-prebuilt
```
소스 빌드 폴백 없이 바이너리만 설치:
```bash
./install.sh --prebuilt-only
```
#### 선택사항
- **Docker** — [Docker 샌드박스 런타임](#현재-런타임-지원)을 사용하는 경우에만 필요 (`runtime.kind = "docker"`). 패키지 관리자 또는 [docker.com](https://docs.docker.com/engine/install/)을 통해 설치.
> **참고:** 기본 `cargo build --release``codegen-units=1`을 사용하여 피크 컴파일 압력을 낮춥니다. 성능이 좋은 머신에서 더 빠른 빌드를 위해 `cargo build --profile release-fast`를 사용하세요.
- **Docker** — [Docker 샌드박스 런타임](#현재-런타임-지원)을 사용하는 경우에만 필요(`runtime.kind = "docker"`).
- **Linux (Debian/Ubuntu):** [docs.docker.com](https://docs.docker.com/engine/install/ubuntu/) 참조
- **Linux (Fedora/RHEL):** [docs.docker.com](https://docs.docker.com/engine/install/fedora/) 참조
- **macOS:** [docker.com/products/docker-desktop](https://www.docker.com/products/docker-desktop/)에서 Docker Desktop 설치
</details>
<!-- markdownlint-enable MD001 MD024 -->
## 빠른 시작
### 사전 빌드 바이너리
### 옵션 1: 자동 설정 (권장)
릴리스 에셋은 다음 플랫폼에 게시됩니다:
`bootstrap.sh` 스크립트는 Rust를 설치하고, ZeroClaw를 클론하고, 컴파일하고, 초기 개발 환경을 설정합니다:
- Linux: `x86_64`, `aarch64`, `armv7`
- macOS: `x86_64`, `aarch64`
- Windows: `x86_64`
```bash
curl -fsSL https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/bootstrap.sh | bash
```
최신 에셋 다운로드:
<https://github.com/zeroclaw-labs/zeroclaw/releases/latest>
이 작업은 다음을 수행합니다:
## 문서
1. Rust 설치 (없는 경우)
2. ZeroClaw 저장소 클론
3. ZeroClaw를 릴리스 모드로 컴파일
4. `~/.cargo/bin/``zeroclaw` 설치
5. `~/.zeroclaw/workspace/`에 기본 작업공간 구조 생성
6. 시작용 `~/.zeroclaw/workspace/config.toml` 구성 파일 생성
온보딩을 마친 후 더 깊은 참조가 필요할 때 사용하세요.
부트스트랩 후, 셸을 다시 로드하거나 `source ~/.cargo/env`를 실행하여 `zeroclaw` 명령을 전역으로 사용하세요.
- [문서 인덱스](docs/README.md)에서 탐색과 "무엇이 어디에 있는지"를 확인하세요.
- [아키텍처 개요](docs/architecture.md)에서 전체 시스템 모델을 확인하세요.
- [구성 참조](docs/reference/api/config-reference.md)에서 모든 키와 예제를 확인하세요.
- [운영 런북](docs/ops/operations-runbook.md)으로 Gateway를 운영하세요.
- [ZeroClaw Onboard](#빠른-시작-tldr)를 따라 안내된 설정을 진행하세요.
- [문제 해결 가이드](docs/ops/troubleshooting.md)로 일반적인 오류를 디버그하세요.
- 노출하기 전에 [보안 가이드](docs/security/README.md)를 검토하세요.
### 옵션 2: 수동 설치
### 참조 문서
<details>
<summary><strong>클릭하여 수동 설치 단계 보기</strong></summary>
```bash
# 1. 저장소 클론
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
# 2. 릴리스로 컴파일
cargo build --release --locked
# 3. 바이너리 설치
cargo install --path . --locked
# 4. 작업공간 초기화
zeroclaw init
# 5. 설치 확인
zeroclaw --version
zeroclaw status
```
</details>
### 설치 후
설치 후(부트스트랩 또는 수동), 다음이 표시되어야 합니다:
```
~/.zeroclaw/workspace/
├── config.toml # 메인 구성
├── .pairing # 페어링 시크릿 (첫 실행 시 생성)
├── logs/ # 데몬/에이전트 로그
├── skills/ # 사용자 정의 스킬
└── memory/ # 대화 컨텍스트 저장소
```
**다음 단계:**
1. `~/.zeroclaw/workspace/config.toml`에서 AI 제공자 구성
2. 고급 옵션은 [구성 참조](docs/config-reference.md) 확인
3. 에이전트 시작: `zeroclaw agent start`
4. 선호하는 채널을 통해 테스트 ([채널 참조](docs/channels-reference.md) 참조)
## 구성
제공자, 채널 및 시스템 동작을 구성하려면 `~/.zeroclaw/workspace/config.toml`을 편집하세요.
### 빠른 구성 참조
```toml
[providers.anthropic]
api_key = "sk-ant-..."
model = "claude-sonnet-4-20250514"
[providers.openai]
api_key = "sk-..."
model = "gpt-4o"
[channels.telegram]
enabled = true
bot_token = "123456:ABC-DEF..."
[channels.matrix]
enabled = true
homeserver_url = "https://matrix.org"
username = "@bot:matrix.org"
password = "..."
[memory]
kind = "markdown" # 또는 "sqlite" 또는 "none"
[runtime]
kind = "native" # 또는 "docker" (Docker 필요)
```
**전체 참조 문서:**
- [구성 참조](docs/config-reference.md) — 모든 설정, 검증, 기본값
- [제공자 참조](docs/providers-reference.md) — AI 제공자별 구성
- [채널 참조](docs/channels-reference.md) — Telegram, Matrix, Slack, Discord 등
- [운영](docs/operations-runbook.md) — 프로덕션 모니터링, 시크릿 교체, 스케일링
### 현재 런타임 지원
ZeroClaw는 두 가지 코드 실행 백엔드를 지원합니다:
- **`native`**(기본값) — 직접 프로세스 실행, 가장 빠른 경로, 신뢰할 수 있는 환경에 이상적
- **`docker`** — 전체 컨테이너 격리, 강화된 보안 정책, Docker 필요
엄격한 샌드박싱이나 네트워크 격리가 필요한 경우 `runtime.kind = "docker"`를 사용하세요. 자세한 내용은 [구성 참조](docs/config-reference.md#runtime)를 참조하세요.
## 명령어
```bash
# 작업공간 관리
zeroclaw init # 새 작업공간 초기화
zeroclaw status # 데몬/에이전트 상태 표시
zeroclaw config validate # config.toml 구문 및 값 확인
# 데몬 관리
zeroclaw daemon start # 백그라운드에서 데몬 시작
zeroclaw daemon stop # 실행 중인 데몬 중지
zeroclaw daemon restart # 데몬 재시작 (구성 다시 로드)
zeroclaw daemon logs # 데몬 로그 표시
# 에이전트 관리
zeroclaw agent start # 에이전트 시작 (데몬 실행 중 필요)
zeroclaw agent stop # 에이전트 중지
zeroclaw agent restart # 에이전트 재시작 (구성 다시 로드)
# 페어링 작업
zeroclaw pairing init # 새 페어링 시크릿 생성
zeroclaw pairing rotate # 기존 페어링 시크릿 교체
# 터널링 (공개 노출용)
zeroclaw tunnel start # 로컬 데몬으로 터널 시작
zeroclaw tunnel stop # 활성 터널 중지
# 진단
zeroclaw doctor # 시스템 상태 검사 실행
zeroclaw version # 버전 및 빌드 정보 표시
```
전체 옵션 및 예제는 [명령어 참조](docs/commands-reference.md)를 참조하세요.
## 협업 및 문서
작업 기반 맵을 위해 문서 허브로 시작하세요:
- 문서 허브: [`docs/README.md`](docs/README.md)
- 통합 문서 목차: [`docs/SUMMARY.md`](docs/SUMMARY.md)
- 명령어 참조: [`docs/commands-reference.md`](docs/commands-reference.md)
- 구성 참조: [`docs/config-reference.md`](docs/config-reference.md)
- 제공자 참조: [`docs/providers-reference.md`](docs/providers-reference.md)
- 채널 참조: [`docs/channels-reference.md`](docs/channels-reference.md)
- 운영 런북: [`docs/operations-runbook.md`](docs/operations-runbook.md)
- 문제 해결: [`docs/troubleshooting.md`](docs/troubleshooting.md)
- 문서 인벤토리/분류: [`docs/docs-inventory.md`](docs/docs-inventory.md)
- PR/이슈 트리아지 스냅샷 (2026년 2월 18일 기준): [`docs/project-triage-snapshot-2026-02-18.md`](docs/project-triage-snapshot-2026-02-18.md)
주요 협업 참조:
- 문서 허브: [docs/README.md](docs/README.md)
- 통합 문서 목차: [docs/SUMMARY.md](docs/SUMMARY.md)
- 명령어 참조: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
- 구성 참조: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md)
- 제공자 참조: [docs/reference/api/providers-reference.md](docs/reference/api/providers-reference.md)
- 채널 참조: [docs/reference/api/channels-reference.md](docs/reference/api/channels-reference.md)
- 운영 런북: [docs/ops/operations-runbook.md](docs/ops/operations-runbook.md)
- 문제 해결: [docs/ops/troubleshooting.md](docs/ops/troubleshooting.md)
### 협업 문서
- 문서 템플릿: [docs/doc-template.md](docs/doc-template.md)
- 문서 변경 체크리스트: [docs/README.md#4-documentation-change-checklist](docs/README.md#4-documentation-change-checklist)
- 채널 구성 참조: [docs/channels-reference.md](docs/channels-reference.md)
- Matrix 암호화 방 운영: [docs/matrix-e2ee-guide.md](docs/matrix-e2ee-guide.md)
- 기여 가이드: [CONTRIBUTING.md](CONTRIBUTING.md)
- PR 워크플로 정책: [docs/contributing/pr-workflow.md](docs/contributing/pr-workflow.md)
- CI 워크플로 가이드: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- 리뷰어 플레이북: [docs/contributing/reviewer-playbook.md](docs/contributing/reviewer-playbook.md)
- PR 워크플로 정책: [docs/pr-workflow.md](docs/pr-workflow.md)
- 리뷰어 플레이북 (트리아지 + 심층 리뷰): [docs/reviewer-playbook.md](docs/reviewer-playbook.md)
- 소유권 및 CI 트리아지 맵: [docs/ci-map.md](docs/ci-map.md)
- 보안 공개 정책: [SECURITY.md](SECURITY.md)
- 문서 템플릿: [docs/contributing/doc-template.md](docs/contributing/doc-template.md)
### 배포 + 운영
배포 및 런타임 운영용:
- 네트워크 배포 가이드: [docs/ops/network-deployment.md](docs/ops/network-deployment.md)
- 프록시 에이전트 플레이북: [docs/ops/proxy-agent-playbook.md](docs/ops/proxy-agent-playbook.md)
- 하드웨어 가이드: [docs/hardware/README.md](docs/hardware/README.md)
## Smooth Crab 🦀
ZeroClaw는 빠르고 효율적인 AI 어시스턴트인 smooth crab 🦀을 위해 만들어졌습니다. Argenis De La Rosa와 커뮤니티가 만들었습니다.
- [zeroclawlabs.ai](https://zeroclawlabs.ai)
- [@zeroclawlabs](https://x.com/zeroclawlabs)
- 네트워크 배포 가이드: [docs/network-deployment.md](docs/network-deployment.md)
- 프록시 에이전트 플레이북: [docs/proxy-agent-playbook.md](docs/proxy-agent-playbook.md)
## ZeroClaw 지원하기
ZeroClaw가 여러분의 작업에 도움이 되었고 지속적인 개발을 지원하고 싶다면 여기에서 기부할 수 있습니다:
ZeroClaw가 당신의 작업에 도움이 되었고 지속적인 개발을 지원하고 싶다면 여기에서 기부할 수 있습니다:
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=for-the-badge&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=for-the-badge&logo=buy-me-a-coffee" alt="커피 한 잔 사주기" /></a>
### 🙏 특별 감사
이 오픈소스 작업에 영감을 주고 힘을 실어주는 커뮤니티와 기관에 진심으로 감사드립니다:
이 오픈소스 작업에 영감을 주고 지원하는 커뮤니티와 기관에 진심으로 감사드립니다:
- **Harvard University** — 지적 호기심을 키우고 가능성의 한계를 넓혀 주셔서.
- **MIT** — 열린 지식, 오픈소스, 그리고 기술이 모두에게 접근 가능해야 한다는 신념을 옹호해 주셔서.
- **Sundai Club** — 커뮤니티, 에너지, 그리고 의미 있는 것을 만들고자 하는 끊임없는 열정.
- **세계 그리고 그 너머** 🌍✨ — 오픈소스를 선한 힘으로 만드는 모든 기여자, 꿈꾸는 이, 그리고 빌더에게. 이것은 여러분을 위한 것입니다.
- **Harvard University** — 지적 호기심을 키우고 가능성의 한계를 넓혀.
- **MIT** — 열린 지식, 오픈소스, 기술이 모두에게 접근 가능해야 한다는 신념을 옹호.
- **Sundai Club** — 커뮤니티, 에너지, 그리고 의미 있는 것을 만들고자 하는 끊임없는 의지.
- **세계 그리고 그 너머** 🌍✨ — 오픈소스를 선한 힘으로 만드는 모든 기여자, 꿈꾸는 , 그리고 빌더에게. 이것은 여러분을 위한 것입니다.
우리는 최고의 아이디어가 모든 곳에서 나오기 때문에 오픈소스로 구축합니다. 이것을 읽고 있다면 여러분도 그 일부입니다. 환영합니다. 🦀❤️
## 기여하기
ZeroClaw가 처음이신가요? [`good first issue`](https://github.com/zeroclaw-labs/zeroclaw/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) 레이블이 붙은 이슈를 찾아보세요 — 시작하는 방법은 [기여 가이드](CONTRIBUTING.md#first-time-contributors)를 참조하세요. AI/vibe-coded PR도 환영합니다! 🤖
[CONTRIBUTING.md](CONTRIBUTING.md)와 [CLA.md](docs/contributing/cla.md)를 참조하세요. 트레이트를 구현하고 PR을 제출하세요:
- CI 워크플로 가이드: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- 새 `Provider``src/providers/`
- 새 `Channel``src/channels/`
- 새 `Observer``src/observability/`
- 새 `Tool``src/tools/`
- 새 `Memory``src/memory/`
- 새 `Tunnel``src/tunnel/`
- 새 `Peripheral``src/peripherals/`
- 새 `Skill``~/.zeroclaw/workspace/skills/<name>/`
<!-- BEGIN:RECENT_CONTRIBUTORS -->
### 🌟 Recent Contributors (v0.3.1)
3 contributors shipped features, fixes, and improvements in this release cycle:
- **Argenis**
- **argenis de la rosa**
- **Claude Opus 4.6**
Thank you to everyone who opened issues, reviewed PRs, translated docs, and helped test. Every contribution matters. 🦀
<!-- END:RECENT_CONTRIBUTORS -->
## ⚠️ 공식 저장소 및 사칭 경고
**이것이 유일한 공식 ZeroClaw 저장소입니다:**
> https://github.com/zeroclaw-labs/zeroclaw
> <https://github.com/zeroclaw-labs/zeroclaw>
"ZeroClaw"라고 주장하거나 ZeroClaw Labs와의 제휴를 암시하는 다른 저장소, 조직, 도메인 또는 패키지는 **승인되지 않았으며 이 프로젝트와 관련이 없습니다**. 알려진 비인가 포크는 [TRADEMARK.md](docs/maintainers/trademark.md)에 나열됩니다.
"ZeroClaw"라고 주장하거나 ZeroClaw Labs와의 제휴를 암시하는 다른 저장소, 조직, 도메인 또는 패키지는 **승인되지 않았으며 이 프로젝트와 관련이 없습니다**. 알려진 승인되지 않은 포크는 [TRADEMARK.md](TRADEMARK.md)에 나열됩니다.
사칭이나 상표 오용을 발견하면 [이슈를 열어](https://github.com/zeroclaw-labs/zeroclaw/issues) 신고해 주세요.
사칭 또는 상표 오용을 발견하면 [이슈를 열어](https://github.com/zeroclaw-labs/zeroclaw/issues) 신고해 주세요.
---
@ -712,16 +453,16 @@ ZeroClaw가 처음이신가요? [`good first issue`](https://github.com/zeroclaw
ZeroClaw는 최대한의 개방성과 기여자 보호를 위해 듀얼 라이선스가 적용됩니다:
| 라이선스 | 사용 사례 |
|---|---|
| [MIT](LICENSE-MIT) | 오픈소스, 연구, 학술, 개인 사용 |
| 라이선스 | 사용 사례 |
| ---------------------------- | ------------------------------------------------------------ |
| [MIT](LICENSE-MIT) | 오픈소스, 연구, 학술, 개인 사용 |
| [Apache 2.0](LICENSE-APACHE) | 특허 보호, 기관, 상업 배포 |
두 라이선스 중 하나를 선택할 수 있습니다. **기여자는 자동으로 두 가지 모두에 대한 권한을 부여합니다** — 전체 기여자 계약은 [CLA.md](docs/contributing/cla.md)를 참조하세요.
두 라이선스 중 하나를 선택할 수 있습니다. **기여자는 자동으로 두 가지 모두에 대한 권한을 부여합니다** — 전체 기여자 계약은 [CLA.md](CLA.md)를 참조하세요.
### 상표
**ZeroClaw** 이름과 로고는 ZeroClaw Labs의 상표입니다. 이 라이선스는 승인이나 제휴를 암시하기 위해 사용할 권한을 부여하지 않습니다. 허용 및 금지 사용은 [TRADEMARK.md](docs/maintainers/trademark.md)를 참조하세요.
**ZeroClaw** 이름과 로고는 ZeroClaw Labs의 등록 상표입니다. 이 라이선스는 승인 또는 제휴를 암시하기 위해 사용할 수 있는 권한을 부여하지 않습니다. 허용 및 금지된 사용은 [TRADEMARK.md](TRADEMARK.md)를 참조하세요.
### 기여자 보호
@ -730,18 +471,23 @@ ZeroClaw는 최대한의 개방성과 기여자 보호를 위해 듀얼 라이
- 기여는 커밋 기록과 [NOTICE](NOTICE)에 **영구적으로 귀속**됩니다
- 기여함으로써 상표권이 이전되지 않습니다
## 기여하기
[CONTRIBUTING.md](CONTRIBUTING.md)와 [CLA.md](CLA.md)를 참조하세요. 트레이트를 구현하고 PR을 제출하세요:
- CI 워크플로 가이드: [docs/ci-map.md](docs/ci-map.md)
- 새 `Provider``src/providers/`
- 새 `Channel``src/channels/`
- 새 `Observer``src/observability/`
- 새 `Tool``src/tools/`
- 새 `Memory``src/memory/`
- 새 `Tunnel``src/tunnel/`
- 새 `Skill``~/.zeroclaw/workspace/skills/<n>/`
---
**ZeroClaw** — 오버헤드 없음. 타협 없음. 어디서나 배포. 무엇이든 교체. 🦀
## 기여자
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors">
<img src="https://contrib.rocks/image?repo=zeroclaw-labs/zeroclaw" alt="ZeroClaw contributors" />
</a>
이 목록은 GitHub 기여자 그래프에서 생성되며 자동으로 업데이트됩니다.
## 스타 히스토리
<p align="center">
@ -749,7 +495,7 @@ ZeroClaw는 최대한의 개방성과 기여자 보호를 위해 듀얼 라이
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&theme=dark&legend=top-left" />
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
<img alt="스타 히스토리 그래프" src="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
</picture>
</a>
</p>

683
README.md
View File

@ -1,8 +1,8 @@
<p align="center">
<img src="https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/docs/assets/zeroclaw-banner.png" alt="ZeroClaw" width="600" />
<img src="docs/assets/zeroclaw.png" alt="ZeroClaw" width="200" />
</p>
<h1 align="center">🦀 ZeroClaw — Personal AI Assistant</h1>
<h1 align="center">ZeroClaw 🦀</h1>
<p align="center">
<strong>Zero overhead. Zero compromise. 100% Rust. 100% Agnostic.</strong><br>
@ -14,14 +14,9 @@
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors"><img src="https://img.shields.io/github/contributors/zeroclaw-labs/zeroclaw?color=green" alt="Contributors" /></a>
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
<a href="https://x.com/zeroclawlabs?s=21"><img src="https://img.shields.io/badge/X-%40zeroclawlabs-000000?style=flat&logo=x&logoColor=white" alt="X: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclawlabs"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
<a href="https://discord.com/invite/wDshRVqRjx"><img src="https://img.shields.io/badge/Discord-Join-5865F2?style=flat&logo=discord&logoColor=white" alt="Discord" /></a>
<a href="https://www.instagram.com/therealzeroclaw"><img src="https://img.shields.io/badge/Instagram-%40therealzeroclaw-E4405F?style=flat&logo=instagram&logoColor=white" alt="Instagram: @therealzeroclaw" /></a>
<a href="https://www.tiktok.com/@zeroclawlabs"><img src="https://img.shields.io/badge/TikTok-%40zeroclawlabs-000000?style=flat&logo=tiktok&logoColor=white" alt="TikTok: @zeroclawlabs" /></a>
<a href="https://www.rednote.com/user/profile/69b735e6000000002603927e"><img src="https://img.shields.io/badge/RedNote-Official-FF2442?style=flat" alt="RedNote" /></a>
<a href="https://www.facebook.com/groups/zeroclaw"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
<a href="https://www.reddit.com/r/zeroclawlabs/"><img src="https://img.shields.io/badge/Reddit-r%2Fzeroclawlabs-FF4500?style=flat&logo=reddit&logoColor=white" alt="Reddit: r/zeroclawlabs" /></a>
</p>
<p align="center">
Built by students and members of the Harvard, MIT, and Sundai.Club communities.
</p>
@ -61,133 +56,33 @@ Built by students and members of the Harvard, MIT, and Sundai.Club communities.
<a href="README.nb.md">🇳🇴 Norsk</a>
</p>
ZeroClaw is a personal AI assistant you run on your own devices. It answers you on the channels you already use (WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, and more). It has a web dashboard for real-time control and can connect to hardware peripherals (ESP32, STM32, Arduino, Raspberry Pi). The Gateway is just the control plane — the product is the assistant.
If you want a personal, single-user assistant that feels local, fast, and always-on, this is it.
<p align="center">
<a href="https://zeroclawlabs.ai">Website</a> ·
<a href="docs/README.md">Docs</a> ·
<a href="docs/architecture.md">Architecture</a> ·
<a href="#quick-start">Getting Started</a> ·
<a href="#migrating-from-openclaw">Migrating from OpenClaw</a> ·
<a href="docs/ops/troubleshooting.md">Troubleshoot</a> ·
<a href="https://discord.com/invite/wDshRVqRjx">Discord</a>
<a href="#quick-start">Getting Started</a> |
<a href="https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/install.sh">One-Click Setup</a> |
<a href="docs/README.md">Docs Hub</a> |
<a href="docs/SUMMARY.md">Docs TOC</a>
</p>
> **Preferred setup:** run `zeroclaw onboard` in your terminal. ZeroClaw Onboard guides you step by step through setting up the gateway, workspace, channels, and provider. It is the recommended setup path and works on macOS, Linux, and Windows (via WSL2). New install? Start here: [Getting started](#quick-start)
<p align="center">
<strong>Quick Routes:</strong>
<a href="docs/reference/README.md">Reference</a> ·
<a href="docs/ops/README.md">Operations</a> ·
<a href="docs/ops/troubleshooting.md">Troubleshoot</a> ·
<a href="docs/security/README.md">Security</a> ·
<a href="docs/hardware/README.md">Hardware</a> ·
<a href="docs/contributing/README.md">Contribute</a>
</p>
### Subscription Auth (OAuth)
<p align="center">
<strong>Fast, small, and fully autonomous AI assistant infrastructure</strong><br />
Deploy anywhere. Swap anything.
</p>
- **OpenAI Codex** (ChatGPT subscription)
- **Gemini** (Google OAuth)
- **Anthropic** (API key or auth token)
<p align="center">
ZeroClaw is the <strong>runtime operating system</strong> for agentic workflows — infrastructure that abstracts models, tools, memory, and execution so agents can be built once and run anywhere.
</p>
Model note: while many providers/models are supported, for the best experience use the strongest latest-generation model available to you. See [Onboarding](#quick-start).
Models config + CLI: [Providers reference](docs/reference/api/providers-reference.md)
Auth profile rotation (OAuth vs API keys) + failover: [Model failover](docs/reference/api/providers-reference.md)
## Install (recommended)
Runtime: Rust stable toolchain. Single binary, no runtime dependencies.
### Homebrew (macOS/Linuxbrew)
```bash
brew install zeroclaw
```
### One-click bootstrap
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./install.sh
```
`zeroclaw onboard` runs automatically after install to configure your workspace and provider.
## Quick start (TL;DR)
Full beginner guide (auth, pairing, channels): [Getting started](docs/setup-guides/one-click-bootstrap.md)
```bash
# Install + onboard
./install.sh --api-key "sk-..." --provider openrouter
# Start the gateway (webhook server + web dashboard)
zeroclaw gateway # default: 127.0.0.1:42617
zeroclaw gateway --port 0 # random port (security hardened)
# Talk to the assistant
zeroclaw agent -m "Hello, ZeroClaw!"
# Interactive mode
zeroclaw agent
# Start full autonomous runtime (gateway + channels + cron + hands)
zeroclaw daemon
# Check status
zeroclaw status
# Run diagnostics
zeroclaw doctor
```
Upgrading? Run `zeroclaw doctor` after updating.
### From source (development)
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
cargo build --release --locked
cargo install --path . --force --locked
zeroclaw onboard
```
> **Dev fallback (no global install):** prefix commands with `cargo run --release --` (example: `cargo run --release -- status`).
## Migrating from OpenClaw
ZeroClaw can import your OpenClaw workspace, memory, and configuration:
```bash
# Preview what will be migrated (safe, read-only)
zeroclaw migrate openclaw --dry-run
# Run the migration
zeroclaw migrate openclaw
```
This migrates your memory entries, workspace files, and configuration from `~/.openclaw/` to `~/.zeroclaw/`. Config is converted from JSON to TOML automatically.
## Security defaults (DM access)
ZeroClaw connects to real messaging surfaces. Treat inbound DMs as untrusted input.
Full security guide: [SECURITY.md](SECURITY.md)
Default behavior on all channels:
- **DM pairing** (default): unknown senders receive a short pairing code and the bot does not process their message.
- Approve with: `zeroclaw pairing approve <channel> <code>` (then the sender is added to a local allowlist).
- Public inbound DMs require an explicit opt-in in `config.toml`.
- Run `zeroclaw doctor` to surface risky or misconfigured DM policies.
**Autonomy levels:**
| Level | Behavior |
|-------|----------|
| `ReadOnly` | Agent can observe but not act |
| `Supervised` (default) | Agent acts with approval for medium/high risk operations |
| `Full` | Agent acts autonomously within policy bounds |
**Sandboxing layers:** workspace isolation, path traversal blocking, command allowlisting, forbidden paths (`/etc`, `/root`, `~/.ssh`), rate limiting (max actions/hour, cost/day caps).
<p align="center"><code>Trait-driven architecture · secure-by-default runtime · provider/channel/tool swappable · pluggable everything</code></p>
<!-- BEGIN:WHATS_NEW -->
<!-- END:WHATS_NEW -->
@ -199,25 +94,15 @@ Use this board for important notices (breaking changes, security advisories, mai
| Date (UTC) | Level | Notice | Action |
| ---------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 2026-02-19 | _Critical_ | We are **not affiliated** with `openagen/zeroclaw`, `zeroclaw.org` or `zeroclaw.net`. The `zeroclaw.org` and `zeroclaw.net` domains currently points to the `openagen/zeroclaw` fork, and that domain/repository are impersonating our official website/project. | Do not trust information, binaries, fundraising, or announcements from those sources. Use only [this repository](https://github.com/zeroclaw-labs/zeroclaw) and our verified social accounts. |
| 2026-02-21 | _Important_ | Our official website is now live: [zeroclawlabs.ai](https://zeroclawlabs.ai). Thanks for your patience while we prepared the launch. We are still seeing impersonation attempts, so do **not** join any investment or fundraising activity claiming the ZeroClaw name unless it is published through our official channels. | Use [this repository](https://github.com/zeroclaw-labs/zeroclaw) as the single source of truth. Follow [X (@zeroclawlabs)](https://x.com/zeroclawlabs?s=21), [Facebook (Group)](https://www.facebook.com/groups/zeroclawlabs), and [Reddit (r/zeroclawlabs)](https://www.reddit.com/r/zeroclawlabs/) for official updates. |
| 2026-02-21 | _Important_ | Our official website is now live: [zeroclawlabs.ai](https://zeroclawlabs.ai). Thanks for your patience while we prepared the launch. We are still seeing impersonation attempts, so do **not** join any investment or fundraising activity claiming the ZeroClaw name unless it is published through our official channels. | Use [this repository](https://github.com/zeroclaw-labs/zeroclaw) as the single source of truth. Follow [X (@zeroclawlabs)](https://x.com/zeroclawlabs?s=21), [Facebook (Group)](https://www.facebook.com/groups/zeroclaw), and [Reddit (r/zeroclawlabs)](https://www.reddit.com/r/zeroclawlabs/) for official updates. |
| 2026-02-19 | _Important_ | Anthropic updated the Authentication and Credential Use terms on 2026-02-19. Claude Code OAuth tokens (Free, Pro, Max) are intended exclusively for Claude Code and Claude.ai; using OAuth tokens from Claude Free/Pro/Max in any other product, tool, or service (including Agent SDK) is not permitted and may violate the Consumer Terms of Service. | Please temporarily avoid Claude Code OAuth integrations to prevent potential loss. Original clause: [Authentication and Credential Use](https://code.claude.com/docs/en/legal-and-compliance#authentication-and-credential-use). |
## Highlights
### ✨ Features
- **Lean Runtime by Default** — common CLI and status workflows run in a few-megabyte memory envelope on release builds.
- **Cost-Efficient Deployment** — designed for $10 boards and small cloud instances, no heavyweight runtime dependencies.
- **Fast Cold Starts** — single-binary Rust runtime keeps command and daemon startup near-instant.
- **Portable Architecture** — one binary across ARM, x86, and RISC-V with swappable providers/channels/tools.
- **Local-first Gateway** — single control plane for sessions, channels, tools, cron, SOPs, and events.
- **Multi-channel inbox** — WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WebSocket, and more.
- **Multi-agent orchestration (Hands)** — autonomous agent swarms that run on schedule and grow smarter over time.
- **Standard Operating Procedures (SOPs)** — event-driven workflow automation with MQTT, webhook, cron, and peripheral triggers.
- **Web Dashboard** — React 19 + Vite web UI with real-time chat, memory browser, config editor, cron manager, and tool inspector.
- **Hardware peripherals** — ESP32, STM32 Nucleo, Arduino, Raspberry Pi GPIO via the `Peripheral` trait.
- **First-class tools** — shell, file I/O, browser, git, web fetch/search, MCP, Jira, Notion, Google Workspace, and 70+ more.
- **Lifecycle hooks** — intercept and modify LLM calls, tool executions, and messages at every stage.
- **Skills platform** — bundled, community, and workspace skills with security auditing.
- **Tunnel support** — Cloudflare, Tailscale, ngrok, OpenVPN, and custom tunnels for remote access.
- 🏎️ **Lean Runtime by Default:** Common CLI and status workflows run in a few-megabyte memory envelope on release builds.
- 💰 **Cost-Efficient Deployment:** Designed for low-cost boards and small cloud instances without heavyweight runtime dependencies.
- ⚡ **Fast Cold Starts:** Single-binary Rust runtime keeps command and daemon startup near-instant for daily operations.
- 🌍 **Portable Architecture:** One binary-first workflow across ARM, x86, and RISC-V with swappable providers/channels/tools.
### Why teams pick ZeroClaw
@ -246,6 +131,8 @@ Local machine quick benchmark (macOS arm64, Feb 2026) normalized for 0.8GHz edge
### Reproducible local measurement
Benchmark claims can drift as code and toolchains evolve, so always measure your current build locally:
```bash
cargo build --release
ls -lh target/release/zeroclaw
@ -254,255 +141,11 @@ ls -lh target/release/zeroclaw
/usr/bin/time -l target/release/zeroclaw status
```
## Everything we built so far
Example sample (macOS arm64, measured on February 18, 2026):
### Core platform
- Gateway HTTP/WS/SSE control plane with sessions, presence, config, cron, webhooks, web dashboard, and pairing.
- CLI surface: `gateway`, `agent`, `onboard`, `doctor`, `status`, `service`, `migrate`, `auth`, `cron`, `channel`, `skills`.
- Agent orchestration loop with tool dispatch, prompt construction, message classification, and memory loading.
- Session model with security policy enforcement, autonomy levels, and approval gating.
- Resilient provider wrapper with failover, retry, and model routing across 20+ LLM backends.
### Channels
Channels: WhatsApp (native), Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, DingTalk, Lark, Mattermost, Nextcloud Talk, Nostr, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WATI, Mochat, Linq, Notion, WebSocket, ClawdTalk.
Feature-gated: Matrix (`channel-matrix`), Lark (`channel-lark`), Nostr (`channel-nostr`).
### Web dashboard
React 19 + Vite 6 + Tailwind CSS 4 web dashboard served directly from the Gateway:
- **Dashboard** — system overview, health status, uptime, cost tracking
- **Agent Chat** — interactive chat with the agent
- **Memory** — browse and manage memory entries
- **Config** — view and edit configuration
- **Cron** — manage scheduled tasks
- **Tools** — browse available tools
- **Logs** — view agent activity logs
- **Cost** — token usage and cost tracking
- **Doctor** — system health diagnostics
- **Integrations** — integration status and setup
- **Pairing** — device pairing management
### Firmware targets
| Target | Platform | Purpose |
|--------|----------|---------|
| ESP32 | Espressif ESP32 | Wireless peripheral agent |
| ESP32-UI | ESP32 + Display | Agent with visual interface |
| STM32 Nucleo | STM32 (ARM Cortex-M) | Industrial peripheral |
| Arduino | Arduino | Basic sensor/actuator bridge |
| Uno Q Bridge | Arduino Uno | Serial bridge to agent |
### Tools + automation
- **Core:** shell, file read/write/edit, git operations, glob search, content search
- **Web:** browser control, web fetch, web search, screenshot, image info, PDF read
- **Integrations:** Jira, Notion, Google Workspace, Microsoft 365, LinkedIn, Composio, Pushover, Weather (wttr.in)
- **MCP:** Model Context Protocol tool wrapper + deferred tool sets
- **Scheduling:** cron add/remove/update/run, schedule tool
- **Memory:** recall, store, forget, knowledge, project intel
- **Advanced:** delegate (agent-to-agent), swarm, model switch/routing, security ops, cloud ops
- **Hardware:** board info, memory map, memory read (feature-gated)
### Runtime + safety
- **Autonomy levels:** ReadOnly, Supervised (default), Full.
- **Sandboxing:** workspace isolation, path traversal blocking, command allowlists, forbidden paths, Landlock (Linux), Bubblewrap.
- **Rate limiting:** max actions per hour, max cost per day (configurable).
- **Approval gating:** interactive approval for medium/high risk operations.
- **E-stop:** emergency shutdown capability.
- **129+ security tests** in automated CI.
### Ops + packaging
- Web dashboard served directly from the Gateway.
- Tunnel support: Cloudflare, Tailscale, ngrok, OpenVPN, custom command.
- Docker runtime adapter for containerized execution.
- CI/CD: beta (auto on push) → stable (manual dispatch) → Docker, crates.io, Scoop, AUR, Homebrew, tweet.
- Pre-built binaries for Linux (x86_64, aarch64, armv7), macOS (x86_64, aarch64), Windows (x86_64).
## Configuration
Minimal `~/.zeroclaw/config.toml`:
```toml
default_provider = "anthropic"
api_key = "sk-ant-..."
```
Full configuration reference: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md).
### Channel configuration
**Telegram:**
```toml
[channels.telegram]
bot_token = "123456:ABC-DEF..."
```
**Discord:**
```toml
[channels.discord]
token = "your-bot-token"
```
**Slack:**
```toml
[channels.slack]
bot_token = "xoxb-..."
app_token = "xapp-..."
```
**WhatsApp:**
```toml
[channels.whatsapp]
enabled = true
```
**Matrix:**
```toml
[channels.matrix]
homeserver_url = "https://matrix.org"
username = "@bot:matrix.org"
password = "..."
```
**Signal:**
```toml
[channels.signal]
phone_number = "+1234567890"
```
### Tunnel configuration
```toml
[tunnel]
kind = "cloudflare" # or "tailscale", "ngrok", "openvpn", "custom", "none"
```
Details: [Channel reference](docs/reference/api/channels-reference.md) · [Config reference](docs/reference/api/config-reference.md)
### Runtime support (current)
- **`native`** (default) — direct process execution, fastest path, ideal for trusted environments.
- **`docker`** — full container isolation, enforced security policies, requires Docker.
Set `runtime.kind = "docker"` for strict sandboxing or network isolation.
## Subscription Auth (OpenAI Codex / Claude Code / Gemini)
ZeroClaw supports subscription-native auth profiles (multi-account, encrypted at rest).
- Store file: `~/.zeroclaw/auth-profiles.json`
- Encryption key: `~/.zeroclaw/.secret_key`
- Profile id format: `<provider>:<profile_name>` (example: `openai-codex:work`)
```bash
# OpenAI Codex OAuth (ChatGPT subscription)
zeroclaw auth login --provider openai-codex --device-code
# Gemini OAuth
zeroclaw auth login --provider gemini --profile default
# Anthropic setup-token
zeroclaw auth paste-token --provider anthropic --profile default --auth-kind authorization
# Check / refresh / switch profile
zeroclaw auth status
zeroclaw auth refresh --provider openai-codex --profile default
zeroclaw auth use --provider openai-codex --profile work
# Run the agent with subscription auth
zeroclaw agent --provider openai-codex -m "hello"
zeroclaw agent --provider anthropic -m "hello"
```
## Agent workspace + skills
Workspace root: `~/.zeroclaw/workspace/` (configurable via config).
Injected prompt files:
- `IDENTITY.md` — agent personality and role
- `USER.md` — user context and preferences
- `MEMORY.md` — long-term facts and lessons
- `AGENTS.md` — session conventions and initialization rules
- `SOUL.md` — core identity and operating principles
Skills: `~/.zeroclaw/workspace/skills/<skill>/SKILL.md` or `SKILL.toml`.
```bash
# List installed skills
zeroclaw skills list
# Install from git
zeroclaw skills install https://github.com/user/my-skill.git
# Security audit before install
zeroclaw skills audit https://github.com/user/my-skill.git
# Remove a skill
zeroclaw skills remove my-skill
```
## CLI commands
```bash
# Workspace management
zeroclaw onboard # Guided setup wizard
zeroclaw status # Show daemon/agent status
zeroclaw doctor # Run system diagnostics
# Gateway + daemon
zeroclaw gateway # Start gateway server (127.0.0.1:42617)
zeroclaw daemon # Start full autonomous runtime
# Agent
zeroclaw agent # Interactive chat mode
zeroclaw agent -m "message" # Single message mode
# Service management
zeroclaw service install # Install as OS service (launchd/systemd)
zeroclaw service start|stop|restart|status
# Channels
zeroclaw channel list # List configured channels
zeroclaw channel doctor # Check channel health
zeroclaw channel bind-telegram 123456789
# Cron + scheduling
zeroclaw cron list # List scheduled jobs
zeroclaw cron add "*/5 * * * *" --prompt "Check system health"
zeroclaw cron remove <id>
# Memory
zeroclaw memory list # List memory entries
zeroclaw memory get <key> # Retrieve a memory
zeroclaw memory stats # Memory statistics
# Auth profiles
zeroclaw auth login --provider <name>
zeroclaw auth status
zeroclaw auth use --provider <name> --profile <profile>
# Hardware peripherals
zeroclaw hardware discover # Scan for connected devices
zeroclaw peripheral list # List connected peripherals
zeroclaw peripheral flash # Flash firmware to device
# Migration
zeroclaw migrate openclaw --dry-run
zeroclaw migrate openclaw
# Shell completions
source <(zeroclaw completions bash)
zeroclaw completions zsh > ~/.zfunc/_zeroclaw
```
Full commands reference: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
- Release binary size: `8.8MB`
- `zeroclaw --help`: about `0.02s` real time, ~`3.9MB` peak memory footprint
- `zeroclaw status`: about `0.01s` real time, ~`4.1MB` peak memory footprint
## Prerequisites
@ -600,6 +243,52 @@ To require binary-only install with no source fallback:
</details>
## Quick Start
### Homebrew (macOS/Linuxbrew)
```bash
brew install zeroclaw
```
### One-click bootstrap
```bash
# Recommended: clone then run local bootstrap script
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./install.sh
# Optional: bootstrap dependencies + Rust on fresh machines
./install.sh --install-system-deps --install-rust
# Optional: pre-built binary first (recommended on low-RAM/low-disk hosts)
./install.sh --prefer-prebuilt
# Optional: binary-only install (no source build fallback)
./install.sh --prebuilt-only
# Optional: run onboarding in the same flow
./install.sh --api-key "sk-..." --provider openrouter [--model "openrouter/auto"]
# Optional: run bootstrap + onboarding fully in Docker-compatible mode
./install.sh --docker
# Optional: force Podman as container CLI
ZEROCLAW_CONTAINER_CLI=podman ./install.sh --docker
# Optional: in --docker mode, skip local image build and use local tag or pull fallback image
./install.sh --docker --skip-build
```
Remote one-liner (review first in security-sensitive environments):
```bash
curl -fsSL https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/install.sh | bash
```
Details: [`docs/setup-guides/one-click-bootstrap.md`](docs/setup-guides/one-click-bootstrap.md) (toolchain mode may request `sudo` for system packages).
### Pre-built binaries
Release assets are published for:
@ -611,50 +300,161 @@ Release assets are published for:
Download the latest assets from:
<https://github.com/zeroclaw-labs/zeroclaw/releases/latest>
## Docs
Example (ARM64 Linux):
Use these when you're past the onboarding flow and want the deeper reference.
```bash
curl -fsSLO https://github.com/zeroclaw-labs/zeroclaw/releases/latest/download/zeroclaw-aarch64-unknown-linux-gnu.tar.gz
tar xzf zeroclaw-aarch64-unknown-linux-gnu.tar.gz
install -m 0755 zeroclaw "$HOME/.cargo/bin/zeroclaw"
```
- Start with the [docs index](docs/README.md) for navigation and "what's where."
- Read the [architecture overview](docs/architecture.md) for the full system model.
- Use the [configuration reference](docs/reference/api/config-reference.md) when you need every key and example.
- Run the Gateway by the book with the [operational runbook](docs/ops/operations-runbook.md).
- Follow [ZeroClaw Onboard](#quick-start) for a guided setup.
- Debug common failures with the [troubleshooting guide](docs/ops/troubleshooting.md).
- Review [security guidance](docs/security/README.md) before exposing anything.
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
cargo build --release --locked
cargo install --path . --force --locked
### Reference docs
# Ensure ~/.cargo/bin is in your PATH
export PATH="$HOME/.cargo/bin:$PATH"
# Quick setup (no prompts, optional model specification)
zeroclaw onboard --api-key sk-... --provider openrouter [--model "openrouter/auto"]
# Or guided wizard
zeroclaw onboard
# If config.toml already exists and you intentionally want to overwrite it
zeroclaw onboard --force
# Or quickly repair channels/allowlists only
zeroclaw onboard --channels-only
# Chat
zeroclaw agent -m "Hello, ZeroClaw!"
# Interactive mode
zeroclaw agent
# Start the gateway (webhook server)
zeroclaw gateway # default: 127.0.0.1:42617
zeroclaw gateway --port 0 # random port (security hardened)
# Start full autonomous runtime
zeroclaw daemon
# Check status
zeroclaw status
zeroclaw auth status
# Generate shell completions (stdout only, safe to source directly)
source <(zeroclaw completions bash)
zeroclaw completions zsh > ~/.zfunc/_zeroclaw
# Run system diagnostics
zeroclaw doctor
# Check channel health
zeroclaw channel doctor
# Bind a Telegram identity into allowlist
zeroclaw channel bind-telegram 123456789
# Get integration setup details
zeroclaw integrations info Telegram
# Note: Channels (Telegram, Discord, Slack) require daemon to be running
# zeroclaw daemon
# Manage background service
zeroclaw service install
zeroclaw service status
zeroclaw service restart
# On Alpine (OpenRC): sudo zeroclaw service install
# Migrate memory from OpenClaw (safe preview first)
zeroclaw migrate openclaw --dry-run
zeroclaw migrate openclaw
```
> **Dev fallback (no global install):** prefix commands with `cargo run --release --` (example: `cargo run --release -- status`).
## Subscription Auth (OpenAI Codex / Claude Code)
ZeroClaw now supports subscription-native auth profiles (multi-account, encrypted at rest).
- Store file: `~/.zeroclaw/auth-profiles.json`
- Encryption key: `~/.zeroclaw/.secret_key`
- Profile id format: `<provider>:<profile_name>` (example: `openai-codex:work`)
OpenAI Codex OAuth (ChatGPT subscription):
```bash
# Recommended on servers/headless
zeroclaw auth login --provider openai-codex --device-code
# Browser/callback flow with paste fallback
zeroclaw auth login --provider openai-codex --profile default
zeroclaw auth paste-redirect --provider openai-codex --profile default
# Check / refresh / switch profile
zeroclaw auth status
zeroclaw auth refresh --provider openai-codex --profile default
zeroclaw auth use --provider openai-codex --profile work
```
Claude Code / Anthropic setup-token:
```bash
# Paste subscription/setup token (Authorization header mode)
zeroclaw auth paste-token --provider anthropic --profile default --auth-kind authorization
# Alias command
zeroclaw auth setup-token --provider anthropic --profile default
```
Run the agent with subscription auth:
```bash
zeroclaw agent --provider openai-codex -m "hello"
zeroclaw agent --provider openai-codex --auth-profile openai-codex:work -m "hello"
# Anthropic supports both API key and auth token env vars:
# ANTHROPIC_AUTH_TOKEN, ANTHROPIC_OAUTH_TOKEN, ANTHROPIC_API_KEY
zeroclaw agent --provider anthropic -m "hello"
```
## Collaboration & Docs
Start from the docs hub for a task-oriented map:
- Documentation hub: [`docs/README.md`](docs/README.md)
- Unified docs TOC: [`docs/SUMMARY.md`](docs/SUMMARY.md)
- Commands reference: [`docs/reference/cli/commands-reference.md`](docs/reference/cli/commands-reference.md)
- Config reference: [`docs/reference/api/config-reference.md`](docs/reference/api/config-reference.md)
- Providers reference: [`docs/reference/api/providers-reference.md`](docs/reference/api/providers-reference.md)
- Channels reference: [`docs/reference/api/channels-reference.md`](docs/reference/api/channels-reference.md)
- Operations runbook: [`docs/ops/operations-runbook.md`](docs/ops/operations-runbook.md)
- Troubleshooting: [`docs/ops/troubleshooting.md`](docs/ops/troubleshooting.md)
- Docs inventory/classification: [`docs/maintainers/docs-inventory.md`](docs/maintainers/docs-inventory.md)
- PR/Issue triage snapshot (as of February 18, 2026): [`docs/maintainers/project-triage-snapshot-2026-02-18.md`](docs/maintainers/project-triage-snapshot-2026-02-18.md)
Core collaboration references:
- Documentation hub: [docs/README.md](docs/README.md)
- Unified docs TOC: [docs/SUMMARY.md](docs/SUMMARY.md)
- Commands reference: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
- Config reference: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md)
- Providers reference: [docs/reference/api/providers-reference.md](docs/reference/api/providers-reference.md)
- Channels reference: [docs/reference/api/channels-reference.md](docs/reference/api/channels-reference.md)
- Operations runbook: [docs/ops/operations-runbook.md](docs/ops/operations-runbook.md)
- Troubleshooting: [docs/ops/troubleshooting.md](docs/ops/troubleshooting.md)
### Collaboration docs
- Documentation template: [docs/contributing/doc-template.md](docs/contributing/doc-template.md)
- Documentation change checklist: [docs/README.md#4-documentation-change-checklist](docs/README.md#4-documentation-change-checklist)
- Channel configuration reference: [docs/reference/api/channels-reference.md](docs/reference/api/channels-reference.md)
- Matrix encrypted-room operations: [docs/security/matrix-e2ee-guide.md](docs/security/matrix-e2ee-guide.md)
- Contribution guide: [CONTRIBUTING.md](CONTRIBUTING.md)
- PR workflow policy: [docs/contributing/pr-workflow.md](docs/contributing/pr-workflow.md)
- CI workflow guide: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- Reviewer playbook: [docs/contributing/reviewer-playbook.md](docs/contributing/reviewer-playbook.md)
- Reviewer playbook (triage + deep review): [docs/contributing/reviewer-playbook.md](docs/contributing/reviewer-playbook.md)
- Security disclosure policy: [SECURITY.md](SECURITY.md)
- Documentation template: [docs/contributing/doc-template.md](docs/contributing/doc-template.md)
### Deployment + operations
For deployment and runtime operations:
- Network deployment guide: [docs/ops/network-deployment.md](docs/ops/network-deployment.md)
- Proxy agent playbook: [docs/ops/proxy-agent-playbook.md](docs/ops/proxy-agent-playbook.md)
- Hardware guides: [docs/hardware/README.md](docs/hardware/README.md)
## Smooth Crab 🦀
ZeroClaw was built for the smooth crab 🦀, a fast and efficient AI assistant. Built by Argenis De La Rosa and the community.
- [zeroclawlabs.ai](https://zeroclawlabs.ai)
- [@zeroclawlabs](https://x.com/zeroclawlabs)
## Support ZeroClaw
@ -673,22 +473,6 @@ A heartfelt thank you to the communities and institutions that inspire and fuel
We're building in the open because the best ideas come from everywhere. If you're reading this, you're part of it. Welcome. 🦀❤️
## Contributing
New to ZeroClaw? Look for issues labeled [`good first issue`](https://github.com/zeroclaw-labs/zeroclaw/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) — see our [Contributing Guide](CONTRIBUTING.md#first-time-contributors) for how to get started. AI/vibe-coded PRs welcome! 🤖
See [CONTRIBUTING.md](CONTRIBUTING.md) and [CLA.md](docs/contributing/cla.md). Implement a trait, submit a PR:
- CI workflow guide: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- New `Provider``src/providers/`
- New `Channel``src/channels/`
- New `Observer``src/observability/`
- New `Tool``src/tools/`
- New `Memory``src/memory/`
- New `Tunnel``src/tunnel/`
- New `Peripheral``src/peripherals/`
- New `Skill``~/.zeroclaw/workspace/skills/<name>/`
<!-- BEGIN:RECENT_CONTRIBUTORS -->
<!-- END:RECENT_CONTRIBUTORS -->
@ -726,6 +510,21 @@ The **ZeroClaw** name and logo are trademarks of ZeroClaw Labs. This license doe
- Your contributions are **permanently attributed** in commit history and [NOTICE](NOTICE)
- No trademark rights are transferred by contributing
## Contributing
New to ZeroClaw? Look for issues labeled [`good first issue`](https://github.com/zeroclaw-labs/zeroclaw/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) — see our [Contributing Guide](CONTRIBUTING.md#first-time-contributors) for how to get started.
See [CONTRIBUTING.md](CONTRIBUTING.md) and [CLA.md](docs/contributing/cla.md). Implement a trait, submit a PR:
- CI workflow guide: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- New `Provider``src/providers/`
- New `Channel``src/channels/`
- New `Observer``src/observability/`
- New `Tool``src/tools/`
- New `Memory``src/memory/`
- New `Tunnel``src/tunnel/`
- New `Skill``~/.zeroclaw/workspace/skills/<name>/`
---
**ZeroClaw** — Zero overhead. Zero compromise. Deploy anywhere. Swap anything. 🦀
@ -736,8 +535,6 @@ The **ZeroClaw** name and logo are trademarks of ZeroClaw Labs. This license doe
<img src="https://contrib.rocks/image?repo=zeroclaw-labs/zeroclaw" alt="ZeroClaw contributors" />
</a>
This list is generated from the GitHub contributors graph and updates automatically.
## Star History
<p align="center">

View File

@ -1,33 +1,27 @@
<p align="center">
<img src="https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/docs/assets/zeroclaw-banner.png" alt="ZeroClaw" width="600" />
<img src="zeroclaw.png" alt="ZeroClaw" width="200" />
</p>
<h1 align="center">🦀 ZeroClaw — Personlig AI-assistent</h1>
<h1 align="center">ZeroClaw 🦀</h1>
<p align="center">
<strong>Null overhead. Null kompromiss. 100% Rust. 100% Agnostisk.</strong><br>
⚡️ <strong>Kjorer pa $10 maskinvare med <5MB RAM: Det er 99% mindre minne enn OpenClaw og 98% billigere enn en Mac mini!</strong>
⚡️ <strong>Kjører på $10 maskinvare med <5MB RAM: Det er 99% mindre minne enn OpenClaw og 98% billigere enn en Mac mini!</strong>
</p>
<p align="center">
<a href="LICENSE-APACHE"><img src="https://img.shields.io/badge/license-MIT%20OR%20Apache%202.0-blue.svg" alt="License: MIT OR Apache-2.0" /></a>
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors"><img src="https://img.shields.io/github/contributors/zeroclaw-labs/zeroclaw?color=green" alt="Contributors" /></a>
<a href="NOTICE"><img src="https://img.shields.io/badge/contributors-27+-green.svg" alt="Contributors" /></a>
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
<a href="https://x.com/zeroclawlabs?s=21"><img src="https://img.shields.io/badge/X-%40zeroclawlabs-000000?style=flat&logo=x&logoColor=white" alt="X: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclawlabs"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
<a href="https://discord.com/invite/wDshRVqRjx"><img src="https://img.shields.io/badge/Discord-Join-5865F2?style=flat&logo=discord&logoColor=white" alt="Discord" /></a>
<a href="https://www.instagram.com/therealzeroclaw"><img src="https://img.shields.io/badge/Instagram-%40therealzeroclaw-E4405F?style=flat&logo=instagram&logoColor=white" alt="Instagram: @therealzeroclaw" /></a>
<a href="https://www.tiktok.com/@zeroclawlabs"><img src="https://img.shields.io/badge/TikTok-%40zeroclawlabs-000000?style=flat&logo=tiktok&logoColor=white" alt="TikTok: @zeroclawlabs" /></a>
<a href="https://www.rednote.com/user/profile/69b735e6000000002603927e"><img src="https://img.shields.io/badge/RedNote-Official-FF2442?style=flat" alt="RedNote" /></a>
<a href="https://www.reddit.com/r/zeroclawlabs/"><img src="https://img.shields.io/badge/Reddit-r%2Fzeroclawlabs-FF4500?style=flat&logo=reddit&logoColor=white" alt="Reddit: r/zeroclawlabs" /></a>
<a href="https://zeroclawlabs.cn/group.jpg"><img src="https://img.shields.io/badge/WeChat-Group-B7D7A8?logo=wechat&logoColor=white" alt="WeChat Group" /></a>
<a href="https://www.xiaohongshu.com/user/profile/67cbfc43000000000d008307?xsec_token=AB73VnYnGNx5y36EtnnZfGmAmS-6Wzv8WMuGpfwfkg6Yc%3D&xsec_source=pc_search"><img src="https://img.shields.io/badge/Xiaohongshu-Official-FF2442?style=flat" alt="Xiaohongshu: Official" /></a>
<a href="https://t.me/zeroclawlabs"><img src="https://img.shields.io/badge/Telegram-%40zeroclawlabs-26A5E4?style=flat&logo=telegram&logoColor=white" alt="Telegram: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclaw"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
</p>
<p align="center">
Bygget av studenter og medlemmer av Harvard-, MIT- og Sundai.Club-miljoene.
</p>
<p align="center">
🌐 <strong>Sprak:</strong>
🌐 <strong>Språk:</strong>
<a href="README.md">🇺🇸 English</a> ·
<a href="README.zh-CN.md">🇨🇳 简体中文</a> ·
<a href="README.ja.md">🇯🇵 日本語</a> ·
@ -61,695 +55,149 @@ Bygget av studenter og medlemmer av Harvard-, MIT- og Sundai.Club-miljoene.
<a href="README.nb.md">🇳🇴 Norsk</a>
</p>
ZeroClaw er en personlig AI-assistent du kjorer pa dine egne enheter. Den svarer deg pa kanalene du allerede bruker (WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work og flere). Den har et nettbasert dashbord for sanntidskontroll og kan kobles til maskinvareperiferiutstyr (ESP32, STM32, Arduino, Raspberry Pi). Gateway er bare kontrollplanet — produktet er assistenten.
Hvis du onsker en personlig, enkeltbruker-assistent som foler seg lokal, rask og alltid tilgjengelig, er dette den.
<p align="center">
<a href="https://zeroclawlabs.ai">Nettsted</a> ·
<a href="docs/README.md">Dokumentasjon</a> ·
<a href="docs/architecture.md">Arkitektur</a> ·
<a href="#hurtigstart">Kom i gang</a> ·
<a href="#migrering-fra-openclaw">Migrering fra OpenClaw</a> ·
<a href="docs/ops/troubleshooting.md">Feilsoking</a> ·
<a href="https://discord.com/invite/wDshRVqRjx">Discord</a>
</p>
> **Anbefalt oppsett:** kjor `zeroclaw onboard` i terminalen din. ZeroClaw Onboard guider deg steg for steg gjennom oppsett av gateway, arbeidsomrade, kanaler og leverandor. Det er den anbefalte oppsettsveien og fungerer pa macOS, Linux og Windows (via WSL2). Ny installasjon? Start her: [Kom i gang](#hurtigstart)
### Abonnementsautentisering (OAuth)
- **OpenAI Codex** (ChatGPT-abonnement)
- **Gemini** (Google OAuth)
- **Anthropic** (API-nokkel eller autentiseringstoken)
Modellmerknad: selv om mange leverandorer/modeller stotter, for best opplevelse bruk den sterkeste siste-generasjons modellen tilgjengelig for deg. Se [Onboarding](#hurtigstart).
Modellkonfigurasjon + CLI: [Leverandorreferanse](docs/reference/api/providers-reference.md)
Autentiseringsprofil-rotasjon (OAuth vs API-nokler) + failover: [Modell-failover](docs/reference/api/providers-reference.md)
## Installasjon (anbefalt)
Kjoretidemiljo: Rust stabil verktoyskjede. Enkel binarfil, ingen kjoretidesavhengigheter.
### Homebrew (macOS/Linuxbrew)
```bash
brew install zeroclaw
```
### Ett-klikks oppstart
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./install.sh
```
`zeroclaw onboard` kjorer automatisk etter installasjon for a konfigurere arbeidsomradet og leverandoren din.
## Hurtigstart (TL;DR)
Full nybegynnerguide (autentisering, paring, kanaler): [Kom i gang](docs/setup-guides/one-click-bootstrap.md)
```bash
# Installer + onboard
./install.sh --api-key "sk-..." --provider openrouter
# Start gateway (webhook-server + nettbasert dashbord)
zeroclaw gateway # standard: 127.0.0.1:42617
zeroclaw gateway --port 0 # tilfeldig port (sikkerhetsskarmet)
# Snakk med assistenten
zeroclaw agent -m "Hello, ZeroClaw!"
# Interaktiv modus
zeroclaw agent
# Start full autonom kjoretidemiljo (gateway + kanaler + cron + hands)
zeroclaw daemon
# Sjekk status
zeroclaw status
# Kjor diagnostikk
zeroclaw doctor
```
Oppgraderer? Kjor `zeroclaw doctor` etter oppdatering.
### Fra kildekode (utvikling)
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
cargo build --release --locked
cargo install --path . --force --locked
zeroclaw onboard
```
> **Utvikler-fallback (ingen global installasjon):** prefiks kommandoer med `cargo run --release --` (eksempel: `cargo run --release -- status`).
## Migrering fra OpenClaw
ZeroClaw kan importere ditt OpenClaw-arbeidsomrade, minne og konfigurasjon:
```bash
# Forhandsvis hva som vil bli migrert (trygt, skrivebeskyttet)
zeroclaw migrate openclaw --dry-run
# Kjor migreringen
zeroclaw migrate openclaw
```
Dette migrerer minneoppforinger, arbeidsomradefiler og konfigurasjon fra `~/.openclaw/` til `~/.zeroclaw/`. Konfigurasjon konverteres automatisk fra JSON til TOML.
## Sikkerhetsstandarder (DM-tilgang)
ZeroClaw kobler til ekte meldingsflater. Behandle innkommende DM-er som upalitelig inndata.
Full sikkerhetsguide: [SECURITY.md](SECURITY.md)
Standardoppforsel pa alle kanaler:
- **DM-paring** (standard): ukjente avsendere mottar en kort paringskode og boten behandler ikke meldingen deres.
- Godkjenn med: `zeroclaw pairing approve <channel> <code>` (deretter legges avsenderen til en lokal tillatelesliste).
- Offentlige innkommende DM-er krever en eksplisitt opt-in i `config.toml`.
- Kjor `zeroclaw doctor` for a avdekke risikable eller feilkonfigurerte DM-policyer.
**Autonominiva:**
| Niva | Oppforsel |
|------|-----------|
| `ReadOnly` | Agenten kan observere men ikke handle |
| `Supervised` (standard) | Agenten handler med godkjenning for medium/hoy-risiko operasjoner |
| `Full` | Agenten handler autonomt innenfor policygrenser |
**Sandkasselag:** arbeidsomradeisolasjon, stiblokkering, kommandotillatelselister, forbudte stier (`/etc`, `/root`, `~/.ssh`), hastighetsbegrensning (maks handlinger/time, kostnad/dag-tak).
---
<!-- BEGIN:WHATS_NEW -->
### 🚀 What's New in v0.3.1 (March 2026)
| Area | Highlights |
|---|---|
| ci | add Termux (aarch64-linux-android) release target |
<!-- END:WHATS_NEW -->
### Kunngoringer
## Hva er ZeroClaw?
Bruk denne tavlen for viktige meldinger (brytende endringer, sikkerhetsrad, vedlikeholdsvinduer og utgivelsesblokkeringer).
ZeroClaw er en lettvektig, foranderlig og utvidbar AI-assistent-infrastruktur bygget i Rust. Den kobler sammen ulike LLM-leverandører (Anthropic, OpenAI, Google, Ollama osv.) via et samlet grensesnitt og støtter flere kanaler (Telegram, Matrix, CLI osv.).
| Dato (UTC) | Niva | Merknad | Handling |
| ---------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 2026-02-19 | _Kritisk_ | Vi er **ikke tilknyttet** `openagen/zeroclaw`, `zeroclaw.org` eller `zeroclaw.net`. Domenene `zeroclaw.org` og `zeroclaw.net` peker for oyeblikket til `openagen/zeroclaw`-forken, og dette domenet/repositoriet utgir seg for a vaere vart offisielle nettsted/prosjekt. | Ikke stol pa informasjon, binarfiler, innsamlinger eller kunngoringer fra disse kildene. Bruk kun [dette repositoriet](https://github.com/zeroclaw-labs/zeroclaw) og vare verifiserte sosiale kontoer. |
| 2026-02-21 | _Viktig_ | Vart offisielle nettsted er na live: [zeroclawlabs.ai](https://zeroclawlabs.ai). Takk for talmodigheten mens vi forberedte lanseringen. Vi ser fortsatt etterligningsforsok, sa **ikke** bli med pa noen investerings- eller innsamlingsaktivitet som hevder ZeroClaw-navnet med mindre det er publisert gjennom vare offisielle kanaler. | Bruk [dette repositoriet](https://github.com/zeroclaw-labs/zeroclaw) som eneste sannhetskilde. Folg [X (@zeroclawlabs)](https://x.com/zeroclawlabs?s=21), [Facebook (Gruppe)](https://www.facebook.com/groups/zeroclawlabs) og [Reddit (r/zeroclawlabs)](https://www.reddit.com/r/zeroclawlabs/) for offisielle oppdateringer. |
| 2026-02-19 | _Viktig_ | Anthropic oppdaterte vilkarene for autentisering og legitimasjonsbruk 2026-02-19. Claude Code OAuth-tokens (Free, Pro, Max) er utelukkende ment for Claude Code og Claude.ai; bruk av OAuth-tokens fra Claude Free/Pro/Max i andre produkter, verktoy eller tjenester (inkludert Agent SDK) er ikke tillatt og kan bryte forbruksvilkarene. | Vennligst unnga Claude Code OAuth-integrasjoner midlertidig for a forhindre potensielt tap. Opprinnelig klausul: [Authentication and Credential Use](https://code.claude.com/docs/en/legal-and-compliance#authentication-and-credential-use). |
### Hovedfunksjoner
## Hoydepunkter
- **🦀 Skrevet i Rust**: Høy ytelse, minnesikkerhet og nullkostnads-abstraksjoner
- **🔌 Leverandør-agnostisk**: Støtter OpenAI, Anthropic, Google Gemini, Ollama og andre
- **📱 Multi-kanal**: Telegram, Matrix (med E2EE), CLI og andre
- **🧠 Pluggbart minne**: SQLite og Markdown-backends
- **🛠️ Utvidbare verktøy**: Legg til tilpassede verktøy enkelt
- **🔒 Sikkerhet først**: Omvendt proxy, personvern-først design
- **Slank kjoretidemiljo som standard** — vanlige CLI- og statusarbeidsflyter kjorer i en fa-megabyte minneramme pa release-bygg.
- **Kostnadseffektiv distribusjon** — designet for $10-kort og sma skyinstanser, ingen tunge kjoretidesavhengigheter.
- **Raske kaldstarter** — enkel-binar Rust-kjoretidemiljo holder kommando- og daemonoppstart naer oydblikkelig.
- **Portabel arkitektur** — en binarfil pa tvers av ARM, x86 og RISC-V med byttbare leverandorer/kanaler/verktoy.
- **Lokal-forst Gateway** — enkelt kontrollplan for sesjoner, kanaler, verktoy, cron, SOP-er og hendelser.
- **Multikanal-innboks** — WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WebSocket og flere.
- **Multi-agent-orkestrering (Hands)** — autonome agentsverm som kjorer etter tidsplan og blir smartere over tid.
- **Standard Operating Procedures (SOPs)** — hendelsesdrevet arbeidsflytautomatisering med MQTT, webhook, cron og periferielle utlosere.
- **Nettbasert dashbord** — React 19 + Vite nettgrensesnitt med sanntidschat, minneleser, konfigurasjonsredigeringsverktoy, cron-behandler og verktoyinspektoring.
- **Maskinvareperiferiutstyr** — ESP32, STM32 Nucleo, Arduino, Raspberry Pi GPIO via `Peripheral`-traitet.
- **Forsterangs verktoy** — shell, fil-I/O, nettleser, git, web fetch/search, MCP, Jira, Notion, Google Workspace og 70+ flere.
- **Livssyklus-hooks** — fang opp og modifiser LLM-kall, verktoyutforelser og meldinger pa hvert trinn.
- **Ferdighetsplattform** — medfoldgende, fellesskaps- og arbeidsomrade-ferdigheter med sikkerhetsgransking.
- **Tunnelstotte** — Cloudflare, Tailscale, ngrok, OpenVPN og egendefinerte tunneler for fjerntilgang.
---
### Hvorfor team velger ZeroClaw
## Rask Start
- **Slank som standard:** liten Rust-binarfil, rask oppstart, lavt minneforbruk.
- **Sikker fra grunnen:** paring, streng sandkassing, eksplisitte tillateleslister, arbeidsomradeomfang.
- **Fullt byttbart:** kjernesystemer er traits (leverandorer, kanaler, verktoy, minne, tunneler).
- **Ingen innlasing:** OpenAI-kompatibel leverandorstotte + pluggbare egendefinerte endepunkter.
### Krav
## Ytelsessammenligning (ZeroClaw vs OpenClaw, reproduserbar)
- Rust 1.70+
- En LLM-leverandør API-nøkkel (Anthropic, OpenAI osv.)
Lokal maskin hurtigtest (macOS arm64, feb 2026) normalisert for 0.8GHz kantmaskinvare.
| | OpenClaw | NanoBot | PicoClaw | ZeroClaw 🦀 |
| ------------------------- | ------------- | -------------- | --------------- | -------------------- |
| **Sprak** | TypeScript | Python | Go | **Rust** |
| **RAM** | > 1GB | > 100MB | < 10MB | **< 5MB** |
| **Oppstart (0.8GHz-kjerne)** | > 500s | > 30s | < 1s | **< 10ms** |
| **Binarstorrelse** | ~28MB (dist) | N/A (Skript) | ~8MB | **~8.8 MB** |
| **Kostnad** | Mac Mini $599 | Linux SBC ~$50 | Linux Board $10 | **Enhver maskinvare $10** |
> Merknader: ZeroClaw-resultater er malt pa release-bygg med `/usr/bin/time -l`. OpenClaw krever Node.js-kjoretidemiljo (typisk ~390MB ekstra minneoverhead), mens NanoBot krever Python-kjoretidemiljo. PicoClaw og ZeroClaw er statiske binarfiler. RAM-tallene ovenfor er kjoretidesminne; byggetidskompileringskrav er hoyere.
<p align="center">
<img src="docs/assets/zeroclaw-comparison.jpeg" alt="ZeroClaw vs OpenClaw-sammenligning" width="800" />
</p>
### Reproduserbar lokal maling
### Installasjon
```bash
cargo build --release
ls -lh target/release/zeroclaw
# Klon repository
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
/usr/bin/time -l target/release/zeroclaw --help
/usr/bin/time -l target/release/zeroclaw status
# Bygg
cargo build --release
# Kjør
cargo run --release
```
## Alt vi har bygget sa langt
### Med Docker
### Kjerneplattform
- Gateway HTTP/WS/SSE-kontrollplan med sesjoner, tilstedevaerelse, konfigurasjon, cron, webhooks, nettbasert dashbord og paring.
- CLI-overflate: `gateway`, `agent`, `onboard`, `doctor`, `status`, `service`, `migrate`, `auth`, `cron`, `channel`, `skills`.
- Agentorkestreringssloyfe med verktoyutsendelse, prompt-konstruksjon, meldingsklassifisering og minnelasting.
- Sesjonsmodell med sikkerhetspolicy-handhevelse, autonominiva og godkjenningsstyring.
- Robust leverandorwrapper med failover, retry og modellruting pa tvers av 20+ LLM-backends.
### Kanaler
Kanaler: WhatsApp (native), Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, DingTalk, Lark, Mattermost, Nextcloud Talk, Nostr, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WATI, Mochat, Linq, Notion, WebSocket, ClawdTalk.
Funksjonsbaserte: Matrix (`channel-matrix`), Lark (`channel-lark`), Nostr (`channel-nostr`).
### Nettbasert dashbord
React 19 + Vite 6 + Tailwind CSS 4 nettbasert dashbord servert direkte fra Gateway:
- **Dashbord** — systemoversikt, helsestatus, oppetid, kostnadssporing
- **Agentchat** — interaktiv chat med agenten
- **Minne** — bla gjennom og administrer minneoppforinger
- **Konfigurasjon** — vis og rediger konfigurasjon
- **Cron** — administrer planlagte oppgaver
- **Verktoy** — bla gjennom tilgjengelige verktoy
- **Logger** — vis agentaktivitetslogger
- **Kostnad** — tokenbruk og kostnadssporing
- **Doktor** — systemhelsediagnostikk
- **Integrasjoner** — integrasjonsstatus og oppsett
- **Paring** — enhetsparingsadministrasjon
### Firmwaremal
| Mal | Plattform | Formal |
|-----|-----------|--------|
| ESP32 | Espressif ESP32 | Tradlos periferiagent |
| ESP32-UI | ESP32 + Skjerm | Agent med visuelt grensesnitt |
| STM32 Nucleo | STM32 (ARM Cortex-M) | Industriell periferi |
| Arduino | Arduino | Grunnleggende sensor/aktuatorbro |
| Uno Q Bridge | Arduino Uno | Seriell bro til agent |
### Verktoy + automatisering
- **Kjerne:** shell, fillesing/skriving/redigering, git-operasjoner, glob-sok, innholdssok
- **Nett:** nettleserkontroll, web fetch, web search, skjermbilde, bildeinformasjon, PDF-lesing
- **Integrasjoner:** Jira, Notion, Google Workspace, Microsoft 365, LinkedIn, Composio, Pushover
- **MCP:** Model Context Protocol verktoy-wrapper + utsatte verktoysamlinger
- **Planlegging:** cron legg til/fjern/oppdater/kjor, planleggingsverktoy
- **Minne:** recall, store, forget, knowledge, project intel
- **Avansert:** delegate (agent-til-agent), swarm, modellbytte/-ruting, sikkerhetsoperasjoner, skyoperasjoner
- **Maskinvare:** board info, memory map, memory read (funksjonsbasert)
### Kjoretidemiljo + sikkerhet
- **Autonominiva:** ReadOnly, Supervised (standard), Full.
- **Sandkassing:** arbeidsomradeisolasjon, stiblokkering, kommandotillatelselister, forbudte stier, Landlock (Linux), Bubblewrap.
- **Hastighetsbegrensning:** maks handlinger per time, maks kostnad per dag (konfigurerbart).
- **Godkjenningsstyring:** interaktiv godkjenning for medium/hoy-risiko operasjoner.
- **Nodstopp:** mulighet for nodavslutning.
- **129+ sikkerhetstester** i automatisert CI.
### Drift + pakking
- Nettbasert dashbord servert direkte fra Gateway.
- Tunnelstotte: Cloudflare, Tailscale, ngrok, OpenVPN, egendefinert kommando.
- Docker kjoretidemiljoadapter for kontainerisert utforelse.
- CI/CD: beta (auto pa push) -> stabil (manuell utsendelse) -> Docker, crates.io, Scoop, AUR, Homebrew, tweet.
- Forhandsbygde binarfiler for Linux (x86_64, aarch64, armv7), macOS (x86_64, aarch64), Windows (x86_64).
```bash
docker run -d \
--name zeroclaw \
-e ANTHROPIC_API_KEY=your_key \
-v zeroclaw-data:/app/data \
zeroclaw/zeroclaw:latest
```
---
## Konfigurasjon
Minimal `~/.zeroclaw/config.toml`:
ZeroClaw bruker en YAML-konfigurasjonsfil. Som standard ser den etter `config.yaml`.
```toml
default_provider = "anthropic"
api_key = "sk-ant-..."
```yaml
# Standardleverandør
provider: anthropic
# Leverandørkonfigurasjon
providers:
anthropic:
api_key: ${ANTHROPIC_API_KEY}
model: claude-3-5-sonnet-20241022
openai:
api_key: ${OPENAI_API_KEY}
model: gpt-4o
# Minnekonfigurasjon
memory:
backend: sqlite
path: data/memory.db
# Kanalkonfigurasjon
channels:
telegram:
token: ${TELEGRAM_BOT_TOKEN}
```
Full konfigurasjonsreferanse: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md).
### Kanalkonfigurasjon
**Telegram:**
```toml
[channels.telegram]
bot_token = "123456:ABC-DEF..."
```
**Discord:**
```toml
[channels.discord]
token = "your-bot-token"
```
**Slack:**
```toml
[channels.slack]
bot_token = "xoxb-..."
app_token = "xapp-..."
```
**WhatsApp:**
```toml
[channels.whatsapp]
enabled = true
```
**Matrix:**
```toml
[channels.matrix]
homeserver_url = "https://matrix.org"
username = "@bot:matrix.org"
password = "..."
```
**Signal:**
```toml
[channels.signal]
phone_number = "+1234567890"
```
### Tunnelkonfigurasjon
```toml
[tunnel]
kind = "cloudflare" # eller "tailscale", "ngrok", "openvpn", "custom", "none"
```
Detaljer: [Kanalreferanse](docs/reference/api/channels-reference.md) · [Konfigurasjonsreferanse](docs/reference/api/config-reference.md)
### Kjoretidestotte (gjeldende)
- **`native`** (standard) — direkte prosessutforelse, raskeste sti, ideell for palitelige miljoer.
- **`docker`** — full kontainerisolasjon, handhevede sikkerhetspolicyer, krever Docker.
Sett `runtime.kind = "docker"` for streng sandkassing eller nettverksisolasjon.
## Abonnementsautentisering (OpenAI Codex / Claude Code / Gemini)
ZeroClaw stotter abonnements-native autentiseringsprofiler (multi-konto, kryptert i hvile).
- Lagringsfil: `~/.zeroclaw/auth-profiles.json`
- Krypteringsnokkel: `~/.zeroclaw/.secret_key`
- Profil-ID-format: `<provider>:<profile_name>` (eksempel: `openai-codex:work`)
```bash
# OpenAI Codex OAuth (ChatGPT-abonnement)
zeroclaw auth login --provider openai-codex --device-code
# Gemini OAuth
zeroclaw auth login --provider gemini --profile default
# Anthropic setup-token
zeroclaw auth paste-token --provider anthropic --profile default --auth-kind authorization
# Sjekk / oppdater / bytt profil
zeroclaw auth status
zeroclaw auth refresh --provider openai-codex --profile default
zeroclaw auth use --provider openai-codex --profile work
# Kjor agenten med abonnementsautentisering
zeroclaw agent --provider openai-codex -m "hello"
zeroclaw agent --provider anthropic -m "hello"
```
## Agentarbeidsomrade + ferdigheter
Arbeidsomraderot: `~/.zeroclaw/workspace/` (konfigurerbar via konfigurasjon).
Injiserte prompt-filer:
- `IDENTITY.md` — agentpersonlighet og rolle
- `USER.md` — brukerkontekst og preferanser
- `MEMORY.md` — langtidsfakta og laerdommer
- `AGENTS.md` — sesjonskonvensjoner og initialiseringsregler
- `SOUL.md` — kjerneidentitet og driftsprinsipper
Ferdigheter: `~/.zeroclaw/workspace/skills/<skill>/SKILL.md` eller `SKILL.toml`.
```bash
# List installerte ferdigheter
zeroclaw skills list
# Installer fra git
zeroclaw skills install https://github.com/user/my-skill.git
# Sikkerhetsgransking for installasjon
zeroclaw skills audit https://github.com/user/my-skill.git
# Fjern en ferdighet
zeroclaw skills remove my-skill
```
## CLI-kommandoer
```bash
# Arbeidsomradeadministrasjon
zeroclaw onboard # Veiledet oppsettveiviser
zeroclaw status # Vis daemon/agentstatus
zeroclaw doctor # Kjor systemdiagnostikk
# Gateway + daemon
zeroclaw gateway # Start gateway-server (127.0.0.1:42617)
zeroclaw daemon # Start full autonom kjoretidemiljo
# Agent
zeroclaw agent # Interaktiv chatmodus
zeroclaw agent -m "melding" # Enkeltmeldingsmodus
# Tjenesteadministrasjon
zeroclaw service install # Installer som OS-tjeneste (launchd/systemd)
zeroclaw service start|stop|restart|status
# Kanaler
zeroclaw channel list # List konfigurerte kanaler
zeroclaw channel doctor # Sjekk kanalhelse
zeroclaw channel bind-telegram 123456789
# Cron + planlegging
zeroclaw cron list # List planlagte jobber
zeroclaw cron add "*/5 * * * *" --prompt "Sjekk systemhelse"
zeroclaw cron remove <id>
# Minne
zeroclaw memory list # List minneoppforinger
zeroclaw memory get <key> # Hent et minne
zeroclaw memory stats # Minnestatistikk
# Autentiseringsprofiler
zeroclaw auth login --provider <navn>
zeroclaw auth status
zeroclaw auth use --provider <navn> --profile <profil>
# Maskinvareperiferiutstyr
zeroclaw hardware discover # Sok etter tilkoblede enheter
zeroclaw peripheral list # List tilkoblede periferienheter
zeroclaw peripheral flash # Flash firmware til enhet
# Migrering
zeroclaw migrate openclaw --dry-run
zeroclaw migrate openclaw
# Shell-fullforinger
source <(zeroclaw completions bash)
zeroclaw completions zsh > ~/.zfunc/_zeroclaw
```
Full kommandoreferanse: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
<!-- markdownlint-disable MD001 MD024 -->
## Forutsetninger
<details>
<summary><strong>Windows</strong></summary>
#### Pakrevd
1. **Visual Studio Build Tools** (gir MSVC-linker og Windows SDK):
```powershell
winget install Microsoft.VisualStudio.2022.BuildTools
```
Under installasjon (eller via Visual Studio Installer), velg arbeidsbelastningen **"Desktop development with C++"**.
2. **Rust-verktoyskjede:**
```powershell
winget install Rustlang.Rustup
```
Etter installasjon, apne en ny terminal og kjor `rustup default stable` for a sikre at den stabile verktoyskjeden er aktiv.
3. **Verifiser** at begge fungerer:
```powershell
rustc --version
cargo --version
```
#### Valgfritt
- **Docker Desktop** — kun pakrevd ved bruk av [Docker-sandkassekjoretidemiljo](#kjoretidestotte-gjeldende) (`runtime.kind = "docker"`). Installer via `winget install Docker.DockerDesktop`.
</details>
<details>
<summary><strong>Linux / macOS</strong></summary>
#### Pakrevd
1. **Byggeverktoyer:**
- **Linux (Debian/Ubuntu):** `sudo apt install build-essential pkg-config`
- **Linux (Fedora/RHEL):** `sudo dnf group install development-tools && sudo dnf install pkg-config`
- **macOS:** Installer Xcode Command Line Tools: `xcode-select --install`
2. **Rust-verktoyskjede:**
```bash
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
```
Se [rustup.rs](https://rustup.rs) for detaljer.
3. **Verifiser** at begge fungerer:
```bash
rustc --version
cargo --version
```
#### En-linje installasjon
Eller hopp over stegene ovenfor og installer alt (systemavhengigheter, Rust, ZeroClaw) med en enkelt kommando:
```bash
curl -LsSf https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/install.sh | bash
```
#### Kompileringsressurskrav
Bygging fra kildekode krever mer ressurser enn a kjore den resulterende binarfilen:
| Ressurs | Minimum | Anbefalt |
| -------------- | ------- | ----------- |
| **RAM + swap** | 2 GB | 4 GB+ |
| **Ledig disk** | 6 GB | 10 GB+ |
Hvis verten din er under minimum, bruk forhandsbygde binarfiler:
```bash
./install.sh --prefer-prebuilt
```
For a kreve kun binarinstallasjon uten kildekodefallback:
```bash
./install.sh --prebuilt-only
```
#### Valgfritt
- **Docker** — kun pakrevd ved bruk av [Docker-sandkassekjoretidemiljo](#kjoretidestotte-gjeldende) (`runtime.kind = "docker"`). Installer via pakkebehandleren din eller [docker.com](https://docs.docker.com/engine/install/).
> **Merk:** Standard `cargo build --release` bruker `codegen-units=1` for a senke topp-kompileringstrykk. For raskere bygg pa kraftige maskiner, bruk `cargo build --profile release-fast`.
</details>
<!-- markdownlint-enable MD001 MD024 -->
### Forhandsbygde binarfiler
Utgivelsesfiler publiseres for:
- Linux: `x86_64`, `aarch64`, `armv7`
- macOS: `x86_64`, `aarch64`
- Windows: `x86_64`
Last ned de nyeste filene fra:
<https://github.com/zeroclaw-labs/zeroclaw/releases/latest>
---
## Dokumentasjon
Bruk disse nar du er forbi onboarding-flyten og onsker dypere referanse.
For detaljert dokumentasjon, se:
- Start med [dokumentasjonsindeksen](docs/README.md) for navigasjon og "hva er hvor."
- Les [arkitekturoversikten](docs/architecture.md) for den fullstendige systemmodellen.
- Bruk [konfigurasjonsreferansen](docs/reference/api/config-reference.md) nar du trenger hver nokkel og eksempel.
- Kjor Gateway etter boken med [driftshandboken](docs/ops/operations-runbook.md).
- Folg [ZeroClaw Onboard](#hurtigstart) for et veiledet oppsett.
- Feilsok vanlige problemer med [feilsokingsguiden](docs/ops/troubleshooting.md).
- Gjennga [sikkerhetsveiledning](docs/security/README.md) for du eksponerer noe.
- [Dokumentasjonshub](docs/README.md)
- [Kommandoreferanse](docs/commands-reference.md)
- [Leverandørreferanse](docs/providers-reference.md)
- [Kanalreferanse](docs/channels-reference.md)
- [Konfigurasjonsreferanse](docs/config-reference.md)
### Referansedokumentasjon
---
- Dokumentasjonshub: [docs/README.md](docs/README.md)
- Samlet innholdsfortegnelse: [docs/SUMMARY.md](docs/SUMMARY.md)
- Kommandoreferanse: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
- Konfigurasjonsreferanse: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md)
- Leverandorreferanse: [docs/reference/api/providers-reference.md](docs/reference/api/providers-reference.md)
- Kanalreferanse: [docs/reference/api/channels-reference.md](docs/reference/api/channels-reference.md)
- Driftshandbok: [docs/ops/operations-runbook.md](docs/ops/operations-runbook.md)
- Feilsoking: [docs/ops/troubleshooting.md](docs/ops/troubleshooting.md)
## Bidrag
### Samarbeidsdokumentasjon
- Bidragsguide: [CONTRIBUTING.md](CONTRIBUTING.md)
- PR-arbeidsflyts-policy: [docs/contributing/pr-workflow.md](docs/contributing/pr-workflow.md)
- CI-arbeidsflytguide: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- Anmelderhandbok: [docs/contributing/reviewer-playbook.md](docs/contributing/reviewer-playbook.md)
- Sikkerhetsavsloring: [SECURITY.md](SECURITY.md)
- Dokumentasjonsmal: [docs/contributing/doc-template.md](docs/contributing/doc-template.md)
### Distribusjon + drift
- Nettverksdistribusjonsguide: [docs/ops/network-deployment.md](docs/ops/network-deployment.md)
- Proxy-agenthandbok: [docs/ops/proxy-agent-playbook.md](docs/ops/proxy-agent-playbook.md)
- Maskinvareguider: [docs/hardware/README.md](docs/hardware/README.md)
## Smooth Crab 🦀
ZeroClaw ble bygget for den smidige krabben 🦀, en rask og effektiv AI-assistent. Bygget av Argenis De La Rosa og fellesskapet.
- [zeroclawlabs.ai](https://zeroclawlabs.ai)
- [@zeroclawlabs](https://x.com/zeroclawlabs)
## Stott ZeroClaw
Hvis ZeroClaw hjelper arbeidet ditt og du onsker a stotte pagaende utvikling, kan du donere her:
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=for-the-badge&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
### Spesiell takk
En hjertelig takk til miljoene og institusjonene som inspirerer og driver dette open source-arbeidet:
- **Harvard University** — for a fremme intellektuell nysgjerrighet og flytte grensene for hva som er mulig.
- **MIT** — for a fremme apen kunnskap, apen kildekode og troen pa at teknologi bor vaere tilgjengelig for alle.
- **Sundai Club** — for fellesskapet, energien og den uboyelige driven til a bygge ting som betyr noe.
- **Verden og videre** 🌍✨ — til hver bidragsyter, drommer og bygger der ute som gjor open source til en kraft for det gode. Dette er for dere.
Vi bygger i det apne fordi de beste ideene kommer fra overalt. Hvis du leser dette, er du en del av det. Velkommen. 🦀❤️
## Bidra
Ny til ZeroClaw? Se etter issues merket [`good first issue`](https://github.com/zeroclaw-labs/zeroclaw/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) — se var [Bidragsguide](CONTRIBUTING.md#first-time-contributors) for hvordan du kommer i gang. AI/vibe-kodede PR-er er velkomne! 🤖
Se [CONTRIBUTING.md](CONTRIBUTING.md) og [CLA.md](docs/contributing/cla.md). Implementer et trait, send inn en PR:
- CI-arbeidsflytguide: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- Ny `Provider` -> `src/providers/`
- Ny `Channel` -> `src/channels/`
- Ny `Observer` -> `src/observability/`
- Nytt `Tool` -> `src/tools/`
- Nytt `Memory` -> `src/memory/`
- Ny `Tunnel` -> `src/tunnel/`
- Ny `Peripheral` -> `src/peripherals/`
- Ny `Skill` -> `~/.zeroclaw/workspace/skills/<name>/`
<!-- BEGIN:RECENT_CONTRIBUTORS -->
<!-- END:RECENT_CONTRIBUTORS -->
## Offisielt repository og etterligningsadvarsel
**Dette er det eneste offisielle ZeroClaw-repositoriet:**
> https://github.com/zeroclaw-labs/zeroclaw
Ethvert annet repository, organisasjon, domene eller pakke som hevder a vaere "ZeroClaw" eller antyder tilknytning til ZeroClaw Labs er **uautorisert og ikke tilknyttet dette prosjektet**. Kjente uautoriserte forker vil bli listet i [TRADEMARK.md](docs/maintainers/trademark.md).
Hvis du stoter pa etterligning eller varemerkemisbruk, vennligst [opprett en issue](https://github.com/zeroclaw-labs/zeroclaw/issues).
Bidrag er velkomne! Vennligst les [Bidragsguiden](CONTRIBUTING.md).
---
## Lisens
ZeroClaw er dobbelt-lisensiert for maksimal apenhet og bidragsyterbeskyttelse:
Dette prosjektet er dobbelt-lisensiert:
| Lisens | Bruksomrade |
|---|---|
| [MIT](LICENSE-MIT) | Open source, forskning, akademisk, personlig bruk |
| [Apache 2.0](LICENSE-APACHE) | Patentbeskyttelse, institusjonell, kommersiell distribusjon |
- MIT License
- Apache License, versjon 2.0
Du kan velge begge lisenser. **Bidragsytere gir automatisk rettigheter under begge** — se [CLA.md](docs/contributing/cla.md) for den fullstendige bidragsyteravtalen.
### Varemerke
**ZeroClaw**-navnet og logoen er varemerker for ZeroClaw Labs. Denne lisensen gir ikke tillatelse til a bruke dem for a antyde stotte eller tilknytning. Se [TRADEMARK.md](docs/maintainers/trademark.md) for tillatt og forbudt bruk.
### Bidragsyterbeskyttelse
- Du **beholder opphavsretten** til dine bidrag
- **Patentbevilgning** (Apache 2.0) beskytter deg mot patentkrav fra andre bidragsytere
- Dine bidrag er **permanent attribuert** i commit-historikk og [NOTICE](NOTICE)
- Ingen varemerkerettigheter overdrages ved a bidra
Se [LICENSE-APACHE](LICENSE-APACHE) og [LICENSE-MIT](LICENSE-MIT) for detaljer.
---
**ZeroClaw** — Null overhead. Null kompromiss. Distribuer overalt. Bytt hva som helst. 🦀
## Fellesskap
## Bidragsytere
- [Telegram](https://t.me/zeroclawlabs)
- [Facebook Group](https://www.facebook.com/groups/zeroclaw)
- [WeChat Group](https://zeroclawlabs.cn/group.jpg)
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors">
<img src="https://contrib.rocks/image?repo=zeroclaw-labs/zeroclaw" alt="ZeroClaw-bidragsytere" />
</a>
---
Denne listen genereres fra GitHub-bidragsytergrafen og oppdateres automatisk.
## Sponsorer
## Stjernehistorikk
Hvis ZeroClaw er nyttig for deg, vennligst vurder å kjøpe oss en kaffe:
<p align="center">
<a href="https://www.star-history.com/#zeroclaw-labs/zeroclaw&type=date&legend=top-left">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&theme=dark&legend=top-left" />
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
<img alt="Stjernehistorikk-diagram" src="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
</picture>
</a>
</p>
[![Buy Me a Coffee](https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee)](https://buymeacoffee.com/argenistherose)
<!-- BEGIN:RECENT_CONTRIBUTORS -->
### 🌟 Recent Contributors (v0.3.1)
3 contributors shipped features, fixes, and improvements in this release cycle:
- **Argenis**
- **argenis de la rosa**
- **Claude Opus 4.6**
Thank you to everyone who opened issues, reviewed PRs, translated docs, and helped test. Every contribution matters. 🦀
<!-- END:RECENT_CONTRIBUTORS -->

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,29 +1,23 @@
<p align="center">
<img src="https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/docs/assets/zeroclaw-banner.png" alt="ZeroClaw" width="600" />
<img src="zeroclaw.png" alt="ZeroClaw" width="200" />
</p>
<h1 align="center">🦀 ZeroClaw — Asistent AI Personal</h1>
<h1 align="center">ZeroClaw 🦀</h1>
<p align="center">
<strong>Zero overhead. Zero compromisuri. 100% Rust. 100% Agnostic.</strong><br>
⚡️ <strong>Rulează pe hardware de $10 cu <5MB RAM: Cu 99% mai puțină memorie decât OpenClaw și cu 98% mai ieftin decât un Mac mini!</strong>
⚡️ <strong>Rulează pe hardware de $10 cu <5MB RAM: Asta e cu 99% mai puțină memorie decât OpenClaw și cu 98% mai ieftin decât un Mac mini!</strong>
</p>
<p align="center">
<a href="LICENSE-APACHE"><img src="https://img.shields.io/badge/license-MIT%20OR%20Apache%202.0-blue.svg" alt="License: MIT OR Apache-2.0" /></a>
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors"><img src="https://img.shields.io/github/contributors/zeroclaw-labs/zeroclaw?color=green" alt="Contributors" /></a>
<a href="NOTICE"><img src="https://img.shields.io/badge/contributors-27+-green.svg" alt="Contributors" /></a>
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
<a href="https://x.com/zeroclawlabs?s=21"><img src="https://img.shields.io/badge/X-%40zeroclawlabs-000000?style=flat&logo=x&logoColor=white" alt="X: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclawlabs"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
<a href="https://discord.com/invite/wDshRVqRjx"><img src="https://img.shields.io/badge/Discord-Join-5865F2?style=flat&logo=discord&logoColor=white" alt="Discord" /></a>
<a href="https://www.instagram.com/therealzeroclaw"><img src="https://img.shields.io/badge/Instagram-%40therealzeroclaw-E4405F?style=flat&logo=instagram&logoColor=white" alt="Instagram: @therealzeroclaw" /></a>
<a href="https://www.tiktok.com/@zeroclawlabs"><img src="https://img.shields.io/badge/TikTok-%40zeroclawlabs-000000?style=flat&logo=tiktok&logoColor=white" alt="TikTok: @zeroclawlabs" /></a>
<a href="https://www.rednote.com/user/profile/69b735e6000000002603927e"><img src="https://img.shields.io/badge/RedNote-Official-FF2442?style=flat" alt="RedNote" /></a>
<a href="https://www.reddit.com/r/zeroclawlabs/"><img src="https://img.shields.io/badge/Reddit-r%2Fzeroclawlabs-FF4500?style=flat&logo=reddit&logoColor=white" alt="Reddit: r/zeroclawlabs" /></a>
</p>
<p align="center">
Construit de studenți și membri ai comunităților Harvard, MIT și Sundai.Club.
<a href="https://zeroclawlabs.cn/group.jpg"><img src="https://img.shields.io/badge/WeChat-Group-B7D7A8?logo=wechat&logoColor=white" alt="WeChat Group" /></a>
<a href="https://www.xiaohongshu.com/user/profile/67cbfc43000000000d008307?xsec_token=AB73VnYnGNx5y36EtnnZfGmAmS-6Wzv8WMuGpfwfkg6Yc%3D&xsec_source=pc_search"><img src="https://img.shields.io/badge/Xiaohongshu-Official-FF2442?style=flat" alt="Xiaohongshu: Official" /></a>
<a href="https://t.me/zeroclawlabs"><img src="https://img.shields.io/badge/Telegram-%40zeroclawlabs-26A5E4?style=flat&logo=telegram&logoColor=white" alt="Telegram: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclaw"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
</p>
<p align="center">
@ -61,695 +55,149 @@ Construit de studenți și membri ai comunităților Harvard, MIT și Sundai.Clu
<a href="README.nb.md">🇳🇴 Norsk</a>
</p>
ZeroClaw este un asistent AI personal pe care îl rulezi pe propriile dispozitive. Îți răspunde pe canalele pe care le folosești deja (WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work și altele). Are un panou web pentru control în timp real și se poate conecta la periferice hardware (ESP32, STM32, Arduino, Raspberry Pi). Gateway-ul este doar planul de control — produsul este asistentul.
Dacă vrei un asistent personal, pentru un singur utilizator, care se simte local, rapid și mereu activ, acesta este.
<p align="center">
<a href="https://zeroclawlabs.ai">Site web</a> ·
<a href="docs/README.md">Documentație</a> ·
<a href="docs/architecture.md">Arhitectură</a> ·
<a href="#pornire-rapidă">Începe</a> ·
<a href="#migrarea-de-la-openclaw">Migrare de la OpenClaw</a> ·
<a href="docs/ops/troubleshooting.md">Depanare</a> ·
<a href="https://discord.com/invite/wDshRVqRjx">Discord</a>
</p>
> **Configurare recomandată:** rulează `zeroclaw onboard` în terminalul tău. ZeroClaw Onboard te ghidează pas cu pas prin configurarea gateway-ului, workspace-ului, canalelor și provider-ului. Este calea de configurare recomandată și funcționează pe macOS, Linux și Windows (prin WSL2). Instalare nouă? Începe aici: [Începe](#pornire-rapidă)
### Autentificare prin abonament (OAuth)
- **OpenAI Codex** (abonament ChatGPT)
- **Gemini** (Google OAuth)
- **Anthropic** (cheie API sau token de autentificare)
Notă despre modele: deși sunt suportate multe provider-e/modele, pentru cea mai bună experiență folosește cel mai puternic model de ultimă generație disponibil. Vezi [Onboarding](#pornire-rapidă).
Configurare modele + CLI: [Referință Providers](docs/reference/api/providers-reference.md)
Rotație profil de autentificare (OAuth vs chei API) + failover: [Failover model](docs/reference/api/providers-reference.md)
## Instalare (recomandat)
Runtime: Rust stable toolchain. Binar unic, fără dependențe de runtime.
### Homebrew (macOS/Linuxbrew)
```bash
brew install zeroclaw
```
### Bootstrap cu un clic
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./install.sh
```
`zeroclaw onboard` rulează automat după instalare pentru a configura workspace-ul și provider-ul.
## Pornire rapidă (TL;DR)
Ghid complet pentru începători (autentificare, asociere, canale): [Începe](docs/setup-guides/one-click-bootstrap.md)
```bash
# Instalare + onboard
./install.sh --api-key "sk-..." --provider openrouter
# Pornește gateway-ul (server webhook + panou web)
zeroclaw gateway # implicit: 127.0.0.1:42617
zeroclaw gateway --port 0 # port aleatoriu (securitate îmbunătățită)
# Vorbește cu asistentul
zeroclaw agent -m "Hello, ZeroClaw!"
# Mod interactiv
zeroclaw agent
# Pornește runtime-ul autonom complet (gateway + canale + cron + hands)
zeroclaw daemon
# Verifică starea
zeroclaw status
# Rulează diagnostice
zeroclaw doctor
```
Actualizezi? Rulează `zeroclaw doctor` după actualizare.
### Din sursă (dezvoltare)
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
cargo build --release --locked
cargo install --path . --force --locked
zeroclaw onboard
```
> **Alternativă dev (fără instalare globală):** prefixează comenzile cu `cargo run --release --` (exemplu: `cargo run --release -- status`).
## Migrarea de la OpenClaw
ZeroClaw poate importa workspace-ul, memoria și configurația OpenClaw:
```bash
# Previzualizează ce va fi migrat (sigur, doar citire)
zeroclaw migrate openclaw --dry-run
# Rulează migrarea
zeroclaw migrate openclaw
```
Aceasta migrează intrările de memorie, fișierele workspace și configurația din `~/.openclaw/` în `~/.zeroclaw/`. Configurația este convertită automat din JSON în TOML.
## Setări implicite de securitate (acces DM)
ZeroClaw se conectează la suprafețe de mesagerie reale. Tratează DM-urile primite ca intrare neîncredere.
Ghid complet de securitate: [SECURITY.md](SECURITY.md)
Comportament implicit pe toate canalele:
- **Asociere DM** (implicit): expeditorii necunoscuți primesc un cod scurt de asociere și bot-ul nu procesează mesajul lor.
- Aprobă cu: `zeroclaw pairing approve <channel> <code>` (apoi expeditorul este adăugat pe o listă de permisiuni locală).
- DM-urile publice primite necesită un opt-in explicit în `config.toml`.
- Rulează `zeroclaw doctor` pentru a identifica politici DM riscante sau configurate greșit.
**Niveluri de autonomie:**
| Nivel | Comportament |
|-------|----------|
| `ReadOnly` | Agentul poate observa dar nu poate acționa |
| `Supervised` (implicit) | Agentul acționează cu aprobare pentru operațiuni de risc mediu/ridicat |
| `Full` | Agentul acționează autonom în limitele politicii |
**Straturi de sandboxing:** izolarea workspace-ului, blocarea traversării căilor, liste de permisiuni pentru comenzi, căi interzise (`/etc`, `/root`, `~/.ssh`), limitare de rată (acțiuni maxime/oră, limite de cost/zi).
---
<!-- BEGIN:WHATS_NEW -->
### 🚀 What's New in v0.3.1 (March 2026)
| Area | Highlights |
|---|---|
| ci | add Termux (aarch64-linux-android) release target |
<!-- END:WHATS_NEW -->
### 📢 Anunțuri
## Ce este ZeroClaw?
Folosește acest panou pentru notificări importante (schimbări care rup compatibilitatea, avize de securitate, ferestre de mentenanță și blocaje de lansare).
ZeroClaw este o infrastructură de asistent AI ușoară, mutabilă și extensibilă construită în Rust. Conectează diverși furnizori de LLM (Anthropic, OpenAI, Google, Ollama, etc.) printr-o interfață unificată și suportă multiple canale (Telegram, Matrix, CLI, etc.).
| Data (UTC) | Nivel | Notificare | Acțiune |
| ---------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 2026-02-19 | _Critic_ | Nu suntem **afiliați** cu `openagen/zeroclaw`, `zeroclaw.org` sau `zeroclaw.net`. Domeniile `zeroclaw.org` și `zeroclaw.net` indică în prezent fork-ul `openagen/zeroclaw`, iar acel domeniu/depozit se dă drept site-ul/proiectul nostru oficial. | Nu aveți încredere în informații, binare, strângeri de fonduri sau anunțuri din acele surse. Folosiți doar [acest depozit](https://github.com/zeroclaw-labs/zeroclaw) și conturile noastre sociale verificate. |
| 2026-02-21 | _Important_ | Site-ul nostru oficial este acum activ: [zeroclawlabs.ai](https://zeroclawlabs.ai). Mulțumim pentru răbdare în timp ce pregăteam lansarea. Încă observăm tentative de uzurpare a identității, așa că **nu** vă alăturați activităților de investiții sau strângere de fonduri care revendică numele ZeroClaw, decât dacă sunt publicate prin canalele noastre oficiale. | Folosiți [acest depozit](https://github.com/zeroclaw-labs/zeroclaw) ca singura sursă de adevăr. Urmăriți [X (@zeroclawlabs)](https://x.com/zeroclawlabs?s=21), [Facebook (Group)](https://www.facebook.com/groups/zeroclawlabs) și [Reddit (r/zeroclawlabs)](https://www.reddit.com/r/zeroclawlabs/) pentru actualizări oficiale. |
| 2026-02-19 | _Important_ | Anthropic a actualizat termenii de Autentificare și Utilizare a Credențialelor pe 2026-02-19. Token-urile OAuth Claude Code (Free, Pro, Max) sunt destinate exclusiv Claude Code și Claude.ai; utilizarea token-urilor OAuth din Claude Free/Pro/Max în orice alt produs, instrument sau serviciu (inclusiv Agent SDK) nu este permisă și poate încălca Termenii Serviciului pentru Consumatori. | Vă rugăm să evitați temporar integrările OAuth Claude Code pentru a preveni pierderi potențiale. Clauza originală: [Authentication and Credential Use](https://code.claude.com/docs/en/legal-and-compliance#authentication-and-credential-use). |
### Caracteristici Principale
## Puncte forte
- **🦀 Scris în Rust**: Performanță ridicată, siguranță a memoriei și abstracțiuni fără costuri
- **🔌 Agnostic față de furnizori**: Suportă OpenAI, Anthropic, Google Gemini, Ollama și alții
- **📱 Multi-canal**: Telegram, Matrix (cu E2EE), CLI și altele
- **🧠 Memorie modulară**: Backend-uri SQLite și Markdown
- **🛠️ Instrumente extensibile**: Adaugă instrumente personalizate cu ușurință
- **🔒 Securitate pe primul loc**: Reverse proxy, design axat pe confidențialitate
- **Runtime ușor implicit** — fluxurile comune CLI și de stare rulează într-un plic de memorie de câțiva megabytes pe build-urile de lansare.
- **Implementare eficientă din punct de vedere al costurilor** — proiectat pentru plăci de $10 și instanțe cloud mici, fără dependențe runtime grele.
- **Porniri la rece rapide** — runtime-ul Rust cu binar unic menține pornirea comenzilor și daemon-ului aproape instantanee.
- **Arhitectură portabilă** — un singur binar pe ARM, x86 și RISC-V cu provider-e/canale/instrumente interschimbabile.
- **Gateway local-first** — plan de control unic pentru sesiuni, canale, instrumente, cron, SOP-uri și evenimente.
- **Inbox multi-canal** — WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WebSocket și altele.
- **Orchestrare multi-agent (Hands)** — roiuri de agenți autonomi care rulează programat și devin mai inteligenți în timp.
- **Proceduri Operaționale Standard (SOP-uri)** — automatizare de fluxuri de lucru bazată pe evenimente cu MQTT, webhook, cron și declanșatoare periferice.
- **Panou Web** — UI web React 19 + Vite cu chat în timp real, browser de memorie, editor de configurare, manager cron și inspector de instrumente.
- **Periferice hardware** — ESP32, STM32 Nucleo, Arduino, Raspberry Pi GPIO prin trait-ul `Peripheral`.
- **Instrumente de primă clasă** — shell, file I/O, browser, git, web fetch/search, MCP, Jira, Notion, Google Workspace și 70+ altele.
- **Hook-uri de ciclu de viață** — interceptează și modifică apelurile LLM, execuțiile de instrumente și mesajele la fiecare etapă.
- **Platformă de skill-uri** — skill-uri incluse, comunitare și de workspace cu audit de securitate.
- **Suport tunnel** — Cloudflare, Tailscale, ngrok, OpenVPN și tuneluri personalizate pentru acces la distanță.
---
### De ce echipele aleg ZeroClaw
## Start Rapid
- **Ușor implicit:** binar Rust mic, pornire rapidă, amprentă de memorie redusă.
- **Sigur prin design:** asociere, sandboxing strict, liste de permisiuni explicite, limitarea workspace-ului.
- **Complet interschimbabil:** sistemele de bază sunt trait-uri (provider-e, canale, instrumente, memorie, tuneluri).
- **Fără lock-in:** suport provider compatibil OpenAI + endpoint-uri personalizate conectabile.
### Cerințe
## Instantaneu Benchmark (ZeroClaw vs OpenClaw, Reproductibil)
- Rust 1.70+
- O cheie API de furnizor LLM (Anthropic, OpenAI, etc.)
Benchmark rapid pe mașină locală (macOS arm64, feb 2026) normalizat pentru hardware edge 0.8GHz.
| | OpenClaw | NanoBot | PicoClaw | ZeroClaw 🦀 |
| ------------------------- | ------------- | -------------- | --------------- | -------------------- |
| **Limbaj** | TypeScript | Python | Go | **Rust** |
| **RAM** | > 1GB | > 100MB | < 10MB | **< 5MB** |
| **Pornire (nucleu 0.8GHz)** | > 500s | > 30s | < 1s | **< 10ms** |
| **Dimensiune binar** | ~28MB (dist) | N/A (Scripts) | ~8MB | **~8.8 MB** |
| **Cost** | Mac Mini $599 | Linux SBC ~$50 | Linux Board $10 | **Orice hardware $10** |
> Note: Rezultatele ZeroClaw sunt măsurate pe build-uri de lansare folosind `/usr/bin/time -l`. OpenClaw necesită runtime Node.js (de obicei ~390MB overhead suplimentar de memorie), în timp ce NanoBot necesită runtime Python. PicoClaw și ZeroClaw sunt binare statice. Cifrele RAM de mai sus sunt memorie runtime; cerințele de compilare în timpul build-ului sunt mai mari.
<p align="center">
<img src="docs/assets/zeroclaw-comparison.jpeg" alt="ZeroClaw vs OpenClaw Comparison" width="800" />
</p>
### Măsurare locală reproductibilă
### Instalare
```bash
cargo build --release
ls -lh target/release/zeroclaw
# Clonează repository-ul
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
/usr/bin/time -l target/release/zeroclaw --help
/usr/bin/time -l target/release/zeroclaw status
# Construiește
cargo build --release
# Rulează
cargo run --release
```
## Tot ce am construit până acum
### Cu Docker
### Platformă de bază
- Plan de control HTTP/WS/SSE Gateway cu sesiuni, prezență, configurare, cron, webhook-uri, panou web și asociere.
- Suprafață CLI: `gateway`, `agent`, `onboard`, `doctor`, `status`, `service`, `migrate`, `auth`, `cron`, `channel`, `skills`.
- Buclă de orchestrare agent cu dispatch de instrumente, construcție de prompt, clasificare de mesaje și încărcare de memorie.
- Model de sesiune cu aplicarea politicii de securitate, niveluri de autonomie și aprobare condiționată.
- Wrapper provider rezilient cu failover, reîncercare și rutare de modele pe 20+ backend-uri LLM.
### Canale
Canale: WhatsApp (nativ), Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, DingTalk, Lark, Mattermost, Nextcloud Talk, Nostr, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WATI, Mochat, Linq, Notion, WebSocket, ClawdTalk.
Feature-gated: Matrix (`channel-matrix`), Lark (`channel-lark`), Nostr (`channel-nostr`).
### Panou web
Panou web React 19 + Vite 6 + Tailwind CSS 4 servit direct din Gateway:
- **Dashboard** — prezentare generală a sistemului, stare de sănătate, uptime, urmărire costuri
- **Agent Chat** — chat interactiv cu agentul
- **Memory** — navighează și gestionează intrările de memorie
- **Config** — vizualizează și editează configurația
- **Cron** — gestionează sarcinile programate
- **Tools** — navighează instrumentele disponibile
- **Logs** — vizualizează jurnalele de activitate ale agentului
- **Cost** — utilizarea token-urilor și urmărirea costurilor
- **Doctor** — diagnostice de sănătate a sistemului
- **Integrations** — starea integrărilor și configurare
- **Pairing** — gestionarea asocierii dispozitivelor
### Ținte firmware
| Țintă | Platformă | Scop |
|--------|----------|---------|
| ESP32 | Espressif ESP32 | Agent periferic wireless |
| ESP32-UI | ESP32 + Display | Agent cu interfață vizuală |
| STM32 Nucleo | STM32 (ARM Cortex-M) | Periferic industrial |
| Arduino | Arduino | Punte senzor/actuator de bază |
| Uno Q Bridge | Arduino Uno | Punte serială către agent |
### Instrumente + automatizare
- **De bază:** shell, file read/write/edit, operații git, glob search, content search
- **Web:** browser control, web fetch, web search, screenshot, image info, PDF read
- **Integrări:** Jira, Notion, Google Workspace, Microsoft 365, LinkedIn, Composio, Pushover
- **MCP:** Model Context Protocol tool wrapper + deferred tool sets
- **Programare:** cron add/remove/update/run, schedule tool
- **Memorie:** recall, store, forget, knowledge, project intel
- **Avansat:** delegate (agent-la-agent), swarm, model switch/routing, security ops, cloud ops
- **Hardware:** board info, memory map, memory read (feature-gated)
### Runtime + siguranță
- **Niveluri de autonomie:** ReadOnly, Supervised (implicit), Full.
- **Sandboxing:** izolarea workspace-ului, blocarea traversării căilor, liste de permisiuni pentru comenzi, căi interzise, Landlock (Linux), Bubblewrap.
- **Limitare de rată:** acțiuni maxime pe oră, cost maxim pe zi (configurabil).
- **Aprobare condiționată:** aprobare interactivă pentru operațiuni de risc mediu/ridicat.
- **E-stop:** capacitate de oprire de urgență.
- **129+ teste de securitate** în CI automatizat.
### Ops + împachetare
- Panou web servit direct din Gateway.
- Suport tunnel: Cloudflare, Tailscale, ngrok, OpenVPN, comandă personalizată.
- Adaptor runtime Docker pentru execuție containerizată.
- CI/CD: beta (automat la push) → stable (dispatch manual) → Docker, crates.io, Scoop, AUR, Homebrew, tweet.
- Binare pre-construite pentru Linux (x86_64, aarch64, armv7), macOS (x86_64, aarch64), Windows (x86_64).
```bash
docker run -d \
--name zeroclaw \
-e ANTHROPIC_API_KEY=your_key \
-v zeroclaw-data:/app/data \
zeroclaw/zeroclaw:latest
```
---
## Configurare
Minimal `~/.zeroclaw/config.toml`:
ZeroClaw folosește un fișier de configurare YAML. În mod implicit, caută `config.yaml`.
```toml
default_provider = "anthropic"
api_key = "sk-ant-..."
```yaml
# Furnizor implicit
provider: anthropic
# Configurare furnizori
providers:
anthropic:
api_key: ${ANTHROPIC_API_KEY}
model: claude-3-5-sonnet-20241022
openai:
api_key: ${OPENAI_API_KEY}
model: gpt-4o
# Configurare memorie
memory:
backend: sqlite
path: data/memory.db
# Configurare canale
channels:
telegram:
token: ${TELEGRAM_BOT_TOKEN}
```
Referință completă de configurare: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md).
### Configurare canale
**Telegram:**
```toml
[channels.telegram]
bot_token = "123456:ABC-DEF..."
```
**Discord:**
```toml
[channels.discord]
token = "your-bot-token"
```
**Slack:**
```toml
[channels.slack]
bot_token = "xoxb-..."
app_token = "xapp-..."
```
**WhatsApp:**
```toml
[channels.whatsapp]
enabled = true
```
**Matrix:**
```toml
[channels.matrix]
homeserver_url = "https://matrix.org"
username = "@bot:matrix.org"
password = "..."
```
**Signal:**
```toml
[channels.signal]
phone_number = "+1234567890"
```
### Configurare tunnel
```toml
[tunnel]
kind = "cloudflare" # sau "tailscale", "ngrok", "openvpn", "custom", "none"
```
Detalii: [Referință canale](docs/reference/api/channels-reference.md) · [Referință configurare](docs/reference/api/config-reference.md)
### Suport runtime (curent)
- **`native`** (implicit) — execuție directă a procesului, cea mai rapidă cale, ideală pentru medii de încredere.
- **`docker`** — izolare completă în container, politici de securitate aplicate, necesită Docker.
Setează `runtime.kind = "docker"` pentru sandboxing strict sau izolare de rețea.
## Autentificare prin abonament (OpenAI Codex / Claude Code / Gemini)
ZeroClaw suportă profiluri de autentificare native abonament (multi-cont, criptate în repaus).
- Fișier de stocare: `~/.zeroclaw/auth-profiles.json`
- Cheie de criptare: `~/.zeroclaw/.secret_key`
- Format id profil: `<provider>:<profile_name>` (exemplu: `openai-codex:work`)
```bash
# OpenAI Codex OAuth (abonament ChatGPT)
zeroclaw auth login --provider openai-codex --device-code
# Gemini OAuth
zeroclaw auth login --provider gemini --profile default
# Anthropic setup-token
zeroclaw auth paste-token --provider anthropic --profile default --auth-kind authorization
# Verifică / reîmprospătează / schimbă profilul
zeroclaw auth status
zeroclaw auth refresh --provider openai-codex --profile default
zeroclaw auth use --provider openai-codex --profile work
# Rulează agentul cu autentificare prin abonament
zeroclaw agent --provider openai-codex -m "hello"
zeroclaw agent --provider anthropic -m "hello"
```
## Workspace agent + skill-uri
Rădăcina workspace: `~/.zeroclaw/workspace/` (configurabilă prin config).
Fișiere prompt injectate:
- `IDENTITY.md` — personalitatea și rolul agentului
- `USER.md` — contextul și preferințele utilizatorului
- `MEMORY.md` — fapte și lecții pe termen lung
- `AGENTS.md` — convenții de sesiune și reguli de inițializare
- `SOUL.md` — identitate de bază și principii operaționale
Skill-uri: `~/.zeroclaw/workspace/skills/<skill>/SKILL.md` sau `SKILL.toml`.
```bash
# Listează skill-urile instalate
zeroclaw skills list
# Instalează din git
zeroclaw skills install https://github.com/user/my-skill.git
# Audit de securitate înainte de instalare
zeroclaw skills audit https://github.com/user/my-skill.git
# Elimină un skill
zeroclaw skills remove my-skill
```
## Comenzi CLI
```bash
# Gestionarea workspace-ului
zeroclaw onboard # Asistent de configurare ghidată
zeroclaw status # Afișează starea daemon/agent
zeroclaw doctor # Rulează diagnostice de sistem
# Gateway + daemon
zeroclaw gateway # Pornește serverul gateway (127.0.0.1:42617)
zeroclaw daemon # Pornește runtime-ul autonom complet
# Agent
zeroclaw agent # Mod chat interactiv
zeroclaw agent -m "message" # Mod mesaj unic
# Gestionarea serviciilor
zeroclaw service install # Instalează ca serviciu OS (launchd/systemd)
zeroclaw service start|stop|restart|status
# Canale
zeroclaw channel list # Listează canalele configurate
zeroclaw channel doctor # Verifică sănătatea canalelor
zeroclaw channel bind-telegram 123456789
# Cron + programare
zeroclaw cron list # Listează sarcinile programate
zeroclaw cron add "*/5 * * * *" --prompt "Check system health"
zeroclaw cron remove <id>
# Memorie
zeroclaw memory list # Listează intrările de memorie
zeroclaw memory get <key> # Recuperează o memorie
zeroclaw memory stats # Statistici memorie
# Profiluri de autentificare
zeroclaw auth login --provider <name>
zeroclaw auth status
zeroclaw auth use --provider <name> --profile <profile>
# Periferice hardware
zeroclaw hardware discover # Scanează dispozitivele conectate
zeroclaw peripheral list # Listează perifericele conectate
zeroclaw peripheral flash # Încarcă firmware pe dispozitiv
# Migrare
zeroclaw migrate openclaw --dry-run
zeroclaw migrate openclaw
# Completări shell
source <(zeroclaw completions bash)
zeroclaw completions zsh > ~/.zfunc/_zeroclaw
```
Referință completă comenzi: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
<!-- markdownlint-disable MD001 MD024 -->
## Cerințe preliminare
<details>
<summary><strong>Windows</strong></summary>
#### Necesare
1. **Visual Studio Build Tools** (furnizează linker-ul MSVC și Windows SDK):
```powershell
winget install Microsoft.VisualStudio.2022.BuildTools
```
În timpul instalării (sau prin Visual Studio Installer), selectează sarcina de lucru **"Desktop development with C++"**.
2. **Rust toolchain:**
```powershell
winget install Rustlang.Rustup
```
După instalare, deschide un terminal nou și rulează `rustup default stable` pentru a te asigura că toolchain-ul stabil este activ.
3. **Verifică** că ambele funcționează:
```powershell
rustc --version
cargo --version
```
#### Opțional
- **Docker Desktop** — necesar doar dacă folosești [runtime-ul Docker sandboxed](#suport-runtime-curent) (`runtime.kind = "docker"`). Instalează prin `winget install Docker.DockerDesktop`.
</details>
<details>
<summary><strong>Linux / macOS</strong></summary>
#### Necesare
1. **Build essentials:**
- **Linux (Debian/Ubuntu):** `sudo apt install build-essential pkg-config`
- **Linux (Fedora/RHEL):** `sudo dnf group install development-tools && sudo dnf install pkg-config`
- **macOS:** Instalează Xcode Command Line Tools: `xcode-select --install`
2. **Rust toolchain:**
```bash
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
```
Vezi [rustup.rs](https://rustup.rs) pentru detalii.
3. **Verifică** că ambele funcționează:
```bash
rustc --version
cargo --version
```
#### Instalator cu o singură linie
Sau sări peste pașii de mai sus și instalează totul (dependențe sistem, Rust, ZeroClaw) cu o singură comandă:
```bash
curl -LsSf https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/install.sh | bash
```
#### Cerințe de resurse pentru compilare
Construirea din sursă necesită mai multe resurse decât rularea binarului rezultat:
| Resursă | Minimum | Recomandat |
| -------------- | ------- | ----------- |
| **RAM + swap** | 2 GB | 4 GB+ |
| **Disc liber** | 6 GB | 10 GB+ |
Dacă gazda ta este sub minimum, folosește binare pre-construite:
```bash
./install.sh --prefer-prebuilt
```
Pentru a impune instalare doar cu binar, fără fallback sursă:
```bash
./install.sh --prebuilt-only
```
#### Opțional
- **Docker** — necesar doar dacă folosești [runtime-ul Docker sandboxed](#suport-runtime-curent) (`runtime.kind = "docker"`). Instalează prin managerul de pachete sau [docker.com](https://docs.docker.com/engine/install/).
> **Notă:** `cargo build --release` implicit folosește `codegen-units=1` pentru a reduce presiunea maximă de compilare. Pentru build-uri mai rapide pe mașini puternice, folosește `cargo build --profile release-fast`.
</details>
<!-- markdownlint-enable MD001 MD024 -->
### Binare pre-construite
Resursele de lansare sunt publicate pentru:
- Linux: `x86_64`, `aarch64`, `armv7`
- macOS: `x86_64`, `aarch64`
- Windows: `x86_64`
Descarcă cele mai recente resurse de la:
<https://github.com/zeroclaw-labs/zeroclaw/releases/latest>
---
## Documentație
Folosește-le când ai trecut de fluxul de onboarding și vrei referința mai detaliată.
Pentru documentație detaliată, vezi:
- Începe cu [indexul documentației](docs/README.md) pentru navigare și „ce este unde."
- Citește [prezentarea arhitecturii](docs/architecture.md) pentru modelul complet al sistemului.
- Folosește [referința de configurare](docs/reference/api/config-reference.md) când ai nevoie de fiecare cheie și exemplu.
- Rulează Gateway-ul conform [runbook-ului operațional](docs/ops/operations-runbook.md).
- Urmează [ZeroClaw Onboard](#pornire-rapidă) pentru configurare ghidată.
- Depanează eșecurile comune cu [ghidul de depanare](docs/ops/troubleshooting.md).
- Revizuiește [ghidul de securitate](docs/security/README.md) înainte de a expune ceva.
- [Hub Documentație](docs/README.md)
- [Referință Comenzi](docs/commands-reference.md)
- [Referință Furnizori](docs/providers-reference.md)
- [Referință Canale](docs/channels-reference.md)
- [Referință Configurare](docs/config-reference.md)
### Documentație de referință
---
- Hub documentație: [docs/README.md](docs/README.md)
- TOC documentație unificată: [docs/SUMMARY.md](docs/SUMMARY.md)
- Referință comenzi: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
- Referință configurare: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md)
- Referință providers: [docs/reference/api/providers-reference.md](docs/reference/api/providers-reference.md)
- Referință canale: [docs/reference/api/channels-reference.md](docs/reference/api/channels-reference.md)
- Runbook operațional: [docs/ops/operations-runbook.md](docs/ops/operations-runbook.md)
- Depanare: [docs/ops/troubleshooting.md](docs/ops/troubleshooting.md)
## Contribuții
### Documentație de colaborare
- Ghid de contribuție: [CONTRIBUTING.md](CONTRIBUTING.md)
- Politica fluxului de lucru PR: [docs/contributing/pr-workflow.md](docs/contributing/pr-workflow.md)
- Ghid flux de lucru CI: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- Playbook recenzent: [docs/contributing/reviewer-playbook.md](docs/contributing/reviewer-playbook.md)
- Politica de divulgare a securității: [SECURITY.md](SECURITY.md)
- Șablon documentație: [docs/contributing/doc-template.md](docs/contributing/doc-template.md)
### Implementare + operațiuni
- Ghid de implementare în rețea: [docs/ops/network-deployment.md](docs/ops/network-deployment.md)
- Playbook proxy agent: [docs/ops/proxy-agent-playbook.md](docs/ops/proxy-agent-playbook.md)
- Ghiduri hardware: [docs/hardware/README.md](docs/hardware/README.md)
## Smooth Crab 🦀
ZeroClaw a fost construit pentru smooth crab 🦀, un asistent AI rapid și eficient. Construit de Argenis De La Rosa și comunitate.
- [zeroclawlabs.ai](https://zeroclawlabs.ai)
- [@zeroclawlabs](https://x.com/zeroclawlabs)
## Susține ZeroClaw
Dacă ZeroClaw te ajută în muncă și vrei să susții dezvoltarea continuă, poți dona aici:
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=for-the-badge&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
### 🙏 Mulțumiri Speciale
Mulțumiri sincere comunităților și instituțiilor care inspiră și alimentează această muncă open-source:
- **Harvard University** — pentru cultivarea curiozității intelectuale și extinderea limitelor posibilului.
- **MIT** — pentru promovarea cunoștințelor deschise, open source și credința că tehnologia ar trebui să fie accesibilă tuturor.
- **Sundai Club** — pentru comunitate, energie și dorința neîncetată de a construi lucruri care contează.
- **Lumea și Dincolo** 🌍✨ — fiecărui contributor, visător și constructor care face din open source o forță a binelui. Aceasta este pentru voi.
Construim deschis pentru că cele mai bune idei vin de peste tot. Dacă citești asta, faci parte din asta. Bine ai venit. 🦀❤️
## Contribuție
Nou la ZeroClaw? Caută probleme etichetate [`good first issue`](https://github.com/zeroclaw-labs/zeroclaw/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) — vezi [Ghidul de Contribuție](CONTRIBUTING.md#first-time-contributors) pentru cum să începi. PR-urile create cu AI/vibe-coded sunt binevenite! 🤖
Vezi [CONTRIBUTING.md](CONTRIBUTING.md) și [CLA.md](docs/contributing/cla.md). Implementează un trait, trimite un PR:
- Ghid flux de lucru CI: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- `Provider` nou → `src/providers/`
- `Channel` nou → `src/channels/`
- `Observer` nou → `src/observability/`
- `Tool` nou → `src/tools/`
- `Memory` nou → `src/memory/`
- `Tunnel` nou → `src/tunnel/`
- `Peripheral` nou → `src/peripherals/`
- `Skill` nou → `~/.zeroclaw/workspace/skills/<name>/`
<!-- BEGIN:RECENT_CONTRIBUTORS -->
<!-- END:RECENT_CONTRIBUTORS -->
## ⚠️ Depozit Oficial & Avertisment de Uzurpare
**Acesta este singurul depozit oficial ZeroClaw:**
> https://github.com/zeroclaw-labs/zeroclaw
Orice alt depozit, organizație, domeniu sau pachet care pretinde a fi „ZeroClaw" sau implică afiliere cu ZeroClaw Labs este **neautorizat și nu este afiliat cu acest proiect**. Fork-urile neautorizate cunoscute vor fi listate în [TRADEMARK.md](docs/maintainers/trademark.md).
Dacă întâmpini uzurpare de identitate sau utilizare abuzivă a mărcii comerciale, te rugăm [deschide o problemă](https://github.com/zeroclaw-labs/zeroclaw/issues).
Contribuțiile sunt binevenite! Te rugăm să citești [Ghidul de Contribuții](CONTRIBUTING.md).
---
## Licență
ZeroClaw este dual-licențiat pentru deschidere maximă și protecția contributorilor:
Acest proiect este licențiat dual:
| Licență | Caz de utilizare |
|---|---|
| [MIT](LICENSE-MIT) | Open-source, cercetare, academic, utilizare personală |
| [Apache 2.0](LICENSE-APACHE) | Protecție brevete, instituțional, implementare comercială |
- MIT License
- Apache License, versiunea 2.0
Poți alege oricare licență. **Contributorii acordă automat drepturi sub ambele** — vezi [CLA.md](docs/contributing/cla.md) pentru acordul complet al contributorului.
### Marcă comercială
Numele și logo-ul **ZeroClaw** sunt mărci comerciale ale ZeroClaw Labs. Această licență nu acordă permisiunea de a le folosi pentru a implica aprobare sau afiliere. Vezi [TRADEMARK.md](docs/maintainers/trademark.md) pentru utilizări permise și interzise.
### Protecții pentru contributori
- **Păstrezi drepturile de autor** ale contribuțiilor tale
- **Acordarea de brevete** (Apache 2.0) te protejează de revendicări de brevete ale altor contributori
- Contribuțiile tale sunt **atribuite permanent** în istoricul commit-urilor și [NOTICE](NOTICE)
- Nu se transferă drepturi de marcă comercială prin contribuție
Vezi [LICENSE-APACHE](LICENSE-APACHE) și [LICENSE-MIT](LICENSE-MIT) pentru detalii.
---
**ZeroClaw** — Zero overhead. Zero compromisuri. Implementează oriunde. Schimbă orice. 🦀
## Comunitate
## Contributori
- [Telegram](https://t.me/zeroclawlabs)
- [Facebook Group](https://www.facebook.com/groups/zeroclaw)
- [WeChat Group](https://zeroclawlabs.cn/group.jpg)
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors">
<img src="https://contrib.rocks/image?repo=zeroclaw-labs/zeroclaw" alt="ZeroClaw contributors" />
</a>
---
Această listă este generată din graficul contributorilor GitHub și se actualizează automat.
## Sponsori
## Istoricul Stelelor
Dacă ZeroClaw îți este util, te rugăm să iei în considerare să ne cumperi o cafea:
<p align="center">
<a href="https://www.star-history.com/#zeroclaw-labs/zeroclaw&type=date&legend=top-left">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&theme=dark&legend=top-left" />
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
</picture>
</a>
</p>
[![Buy Me a Coffee](https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee)](https://buymeacoffee.com/argenistherose)
<!-- BEGIN:RECENT_CONTRIBUTORS -->
### 🌟 Recent Contributors (v0.3.1)
3 contributors shipped features, fixes, and improvements in this release cycle:
- **Argenis**
- **argenis de la rosa**
- **Claude Opus 4.6**
Thank you to everyone who opened issues, reviewed PRs, translated docs, and helped test. Every contribution matters. 🦀
<!-- END:RECENT_CONTRIBUTORS -->

View File

@ -1,33 +1,24 @@
<p align="center">
<img src="https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/docs/assets/zeroclaw-banner.png" alt="ZeroClaw" width="600" />
<img src="docs/assets/zeroclaw.png" alt="ZeroClaw" width="200" />
</p>
<h1 align="center">🦀 ZeroClaw — Персональный ИИ-ассистент</h1>
<h1 align="center">ZeroClaw 🦀(Русский)</h1>
<p align="center">
<strong>Нулевые накладные расходы. Нулевые компромиссы. 100% Rust. 100% Агностик.</strong><br>
⚡️ <strong>Работает на оборудовании за $10 с <5МБ ОЗУ: это на 99% меньше памяти, чем OpenClaw, и на 98% дешевле Mac mini!</strong>
<strong>Zero overhead. Zero compromise. 100% Rust. 100% Agnostic.</strong>
</p>
<p align="center">
<a href="LICENSE-APACHE"><img src="https://img.shields.io/badge/license-MIT%20OR%20Apache%202.0-blue.svg" alt="License: MIT OR Apache-2.0" /></a>
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors"><img src="https://img.shields.io/github/contributors/zeroclaw-labs/zeroclaw?color=green" alt="Contributors" /></a>
<a href="NOTICE"><img src="https://img.shields.io/badge/contributors-27+-green.svg" alt="Contributors" /></a>
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
<a href="https://x.com/zeroclawlabs?s=21"><img src="https://img.shields.io/badge/X-%40zeroclawlabs-000000?style=flat&logo=x&logoColor=white" alt="X: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclawlabs"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
<a href="https://discord.com/invite/wDshRVqRjx"><img src="https://img.shields.io/badge/Discord-Join-5865F2?style=flat&logo=discord&logoColor=white" alt="Discord" /></a>
<a href="https://www.instagram.com/therealzeroclaw"><img src="https://img.shields.io/badge/Instagram-%40therealzeroclaw-E4405F?style=flat&logo=instagram&logoColor=white" alt="Instagram: @therealzeroclaw" /></a>
<a href="https://www.tiktok.com/@zeroclawlabs"><img src="https://img.shields.io/badge/TikTok-%40zeroclawlabs-000000?style=flat&logo=tiktok&logoColor=white" alt="TikTok: @zeroclawlabs" /></a>
<a href="https://www.rednote.com/user/profile/69b735e6000000002603927e"><img src="https://img.shields.io/badge/RedNote-Official-FF2442?style=flat" alt="RedNote" /></a>
<a href="https://www.facebook.com/groups/zeroclaw"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
<a href="https://www.reddit.com/r/zeroclawlabs/"><img src="https://img.shields.io/badge/Reddit-r%2Fzeroclawlabs-FF4500?style=flat&logo=reddit&logoColor=white" alt="Reddit: r/zeroclawlabs" /></a>
</p>
<p align="center">
Создано студентами и участниками сообществ Harvard, MIT и Sundai.Club.
</p>
<p align="center">
🌐 <strong>Языки:</strong>
🌐 Языки:
<a href="README.md">🇺🇸 English</a> ·
<a href="README.zh-CN.md">🇨🇳 简体中文</a> ·
<a href="README.ja.md">🇯🇵 日本語</a> ·
@ -61,190 +52,85 @@
<a href="README.nb.md">🇳🇴 Norsk</a>
</p>
ZeroClaw — это персональный ИИ-ассистент, который вы запускаете на своих устройствах. Он отвечает вам в каналах, которые вы уже используете (WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work и другие). У него есть веб-панель для управления в реальном времени, и он может подключаться к аппаратным периферийным устройствам (ESP32, STM32, Arduino, Raspberry Pi). Gateway — это просто панель управления, а продукт — это ассистент.
Если вам нужен персональный однопользовательский ассистент, который ощущается локальным, быстрым и всегда включённым — это он.
<p align="center">
<a href="https://zeroclawlabs.ai">Веб-сайт</a> ·
<a href="docs/README.md">Документация</a> ·
<a href="docs/architecture.md">Архитектура</a> ·
<a href="#быстрый-старт">Начало работы</a> ·
<a href="#миграция-с-openclaw">Миграция с OpenClaw</a> ·
<a href="docs/ops/troubleshooting.md">Устранение неполадок</a> ·
<a href="https://discord.com/invite/wDshRVqRjx">Discord</a>
<a href="https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/install.sh">Установка в 1 клик</a> |
<a href="docs/setup-guides/README.md">Быстрый старт</a> |
<a href="docs/README.ru.md">Хаб документации</a> |
<a href="docs/SUMMARY.md">TOC docs</a>
</p>
> **Рекомендуемая настройка:** выполните `zeroclaw onboard` в терминале. ZeroClaw Onboard пошагово проведёт вас через настройку gateway, рабочего пространства, каналов и провайдера. Это рекомендуемый путь настройки, работающий на macOS, Linux и Windows (через WSL2). Новая установка? Начните здесь: [Начало работы](#быстрый-старт)
<p align="center">
<strong>Быстрые маршруты:</strong>
<a href="docs/reference/README.md">Справочники</a> ·
<a href="docs/ops/README.md">Операции</a> ·
<a href="docs/ops/troubleshooting.md">Диагностика</a> ·
<a href="docs/security/README.md">Безопасность</a> ·
<a href="docs/hardware/README.md">Аппаратная часть</a> ·
<a href="docs/contributing/README.md">Вклад и CI</a>
</p>
### Аутентификация по подписке (OAuth)
- **OpenAI Codex** (подписка ChatGPT)
- **Gemini** (Google OAuth)
- **Anthropic** (API-ключ или токен аутентификации)
Примечание о моделях: хотя поддерживается множество провайдеров/моделей, для лучшего опыта используйте самую мощную модель последнего поколения, доступную вам. См. [Онбординг](#быстрый-старт).
Конфигурация моделей + CLI: [Справочник провайдеров](docs/reference/api/providers-reference.md)
Ротация профилей аутентификации (OAuth vs API-ключи) + переключение при сбое: [Переключение моделей при сбое](docs/reference/api/providers-reference.md)
## Установка (рекомендуется)
Среда выполнения: стабильный набор инструментов Rust. Один бинарный файл, без зависимостей времени выполнения.
### Homebrew (macOS/Linuxbrew)
```bash
brew install zeroclaw
```
### Установка в один клик
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./install.sh
```
`zeroclaw onboard` запускается автоматически после установки для настройки рабочего пространства и провайдера.
## Быстрый старт (TL;DR)
Полное руководство для начинающих (аутентификация, сопряжение, каналы): [Начало работы](docs/setup-guides/one-click-bootstrap.md)
```bash
# Install + onboard
./install.sh --api-key "sk-..." --provider openrouter
# Start the gateway (webhook server + web dashboard)
zeroclaw gateway # default: 127.0.0.1:42617
zeroclaw gateway --port 0 # random port (security hardened)
# Talk to the assistant
zeroclaw agent -m "Hello, ZeroClaw!"
# Interactive mode
zeroclaw agent
# Start full autonomous runtime (gateway + channels + cron + hands)
zeroclaw daemon
# Check status
zeroclaw status
# Run diagnostics
zeroclaw doctor
```
Обновляетесь? Выполните `zeroclaw doctor` после обновления.
### Из исходного кода (для разработки)
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
cargo build --release --locked
cargo install --path . --force --locked
zeroclaw onboard
```
> **Альтернатива для разработки (без глобальной установки):** добавляйте перед командами `cargo run --release --` (пример: `cargo run --release -- status`).
## Миграция с OpenClaw
ZeroClaw может импортировать ваше рабочее пространство, память и конфигурацию OpenClaw:
```bash
# Preview what will be migrated (safe, read-only)
zeroclaw migrate openclaw --dry-run
# Run the migration
zeroclaw migrate openclaw
```
Это переносит ваши записи памяти, файлы рабочего пространства и конфигурацию из `~/.openclaw/` в `~/.zeroclaw/`. Конфигурация автоматически конвертируется из JSON в TOML.
## Настройки безопасности по умолчанию (доступ через ЛС)
ZeroClaw подключается к реальным поверхностям обмена сообщениями. Относитесь к входящим ЛС как к ненадёжному вводу.
Полное руководство по безопасности: [SECURITY.md](SECURITY.md)
Поведение по умолчанию на всех каналах:
- **Сопряжение ЛС** (по умолчанию): неизвестные отправители получают короткий код сопряжения, и бот не обрабатывает их сообщение.
- Одобрение через: `zeroclaw pairing approve <channel> <code>` (затем отправитель добавляется в локальный список разрешённых).
- Публичные входящие ЛС требуют явного включения в `config.toml`.
- Выполните `zeroclaw doctor` для выявления рискованных или неправильно настроенных политик ЛС.
**Уровни автономности:**
| Уровень | Поведение |
|---------|-----------|
| `ReadOnly` | Агент может наблюдать, но не действовать |
| `Supervised` (по умолчанию) | Агент действует с одобрением для операций среднего/высокого риска |
| `Full` | Агент действует автономно в рамках политики |
**Слои изоляции:** изоляция рабочего пространства, блокировка обхода путей, списки разрешённых команд, запрещённые пути (`/etc`, `/root`, `~/.ssh`), ограничение частоты (макс. действий/час, лимиты стоимости/день).
> Этот файл — выверенный перевод `README.md` с акцентом на точность и читаемость (не дословный перевод).
>
> Технические идентификаторы (команды, ключи конфигурации, API-пути, имена Trait) сохранены на английском.
>
> Последняя синхронизация: **2026-02-19**.
<!-- BEGIN:WHATS_NEW -->
### 🚀 What's New in v0.3.1 (March 2026)
| Area | Highlights |
|---|---|
| ci | add Termux (aarch64-linux-android) release target |
<!-- END:WHATS_NEW -->
### 📢 Объявления
## 📢 Доска объявлений
Используйте эту доску для важных уведомлений (критические изменения, рекомендации по безопасности, окна обслуживания и блокеры релизов).
Публикуйте здесь важные уведомления (breaking changes, security advisories, окна обслуживания и блокеры релиза).
| Дата (UTC) | Уровень | Уведомление | Действие |
| ---------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 2026-02-19 | _Критический_ | Мы **не связаны** с `openagen/zeroclaw`, `zeroclaw.org` или `zeroclaw.net`. Домены `zeroclaw.org` и `zeroclaw.net` в настоящее время указывают на форк `openagen/zeroclaw`, и этот домен/репозиторий выдают себя за наш официальный сайт/проект. | Не доверяйте информации, бинарным файлам, сбору средств или объявлениям из этих источников. Используйте только [этот репозиторий](https://github.com/zeroclaw-labs/zeroclaw) и наши верифицированные аккаунты в социальных сетях. |
| 2026-02-21 | _Важный_ | Наш официальный сайт теперь доступен: [zeroclawlabs.ai](https://zeroclawlabs.ai). Спасибо за терпение, пока мы готовили запуск. Мы по-прежнему видим попытки имитации, поэтому **не** присоединяйтесь к каким-либо инвестиционным или фандрайзинговым активностям, использующим имя ZeroClaw, если они не опубликованы через наши официальные каналы. | Используйте [этот репозиторий](https://github.com/zeroclaw-labs/zeroclaw) как единственный источник истины. Следите за обновлениями в [X (@zeroclawlabs)](https://x.com/zeroclawlabs?s=21), [Facebook (Group)](https://www.facebook.com/groups/zeroclawlabs) и [Reddit (r/zeroclawlabs)](https://www.reddit.com/r/zeroclawlabs/). |
| 2026-02-19 | _Важный_ | Anthropic обновила условия Authentication and Credential Use 2026-02-19. Токены Claude Code OAuth (Free, Pro, Max) предназначены исключительно для Claude Code и Claude.ai; использование токенов OAuth от Claude Free/Pro/Max в любом другом продукте, инструменте или сервисе (включая Agent SDK) не разрешено и может нарушать Условия обслуживания потребителей. | Пожалуйста, временно избегайте интеграций Claude Code OAuth для предотвращения потенциальных потерь. Оригинальный пункт: [Authentication and Credential Use](https://code.claude.com/docs/en/legal-and-compliance#authentication-and-credential-use). |
| Дата (UTC) | Уровень | Объявление | Действие |
|---|---|---|---|
| 2026-02-19 | _Срочно_ | Мы **не аффилированы** с `openagen/zeroclaw` и `zeroclaw.org`. Домен `zeroclaw.org` сейчас указывает на fork `openagen/zeroclaw`, и этот домен/репозиторий выдают себя за наш официальный сайт и проект. | Не доверяйте информации, бинарникам, сборам средств и «официальным» объявлениям из этих источников. Используйте только [этот репозиторий](https://github.com/zeroclaw-labs/zeroclaw) и наши верифицированные соцсети. |
| 2026-02-21 | _Важно_ | Наш официальный сайт уже запущен: [zeroclawlabs.ai](https://zeroclawlabs.ai). Спасибо, что дождались запуска. При этом попытки выдавать себя за ZeroClaw продолжаются, поэтому не участвуйте в инвестициях, сборах средств и похожих активностях, если они не подтверждены через наши официальные каналы. | Ориентируйтесь только на [этот репозиторий](https://github.com/zeroclaw-labs/zeroclaw); также следите за [X (@zeroclawlabs)](https://x.com/zeroclawlabs?s=21), [Telegram (@zeroclawlabs)](https://t.me/zeroclawlabs), [Facebook (группа)](https://www.facebook.com/groups/zeroclaw), [Reddit (r/zeroclawlabs)](https://www.reddit.com/r/zeroclawlabs/) и [Xiaohongshu](https://www.xiaohongshu.com/user/profile/67cbfc43000000000d008307?xsec_token=AB73VnYnGNx5y36EtnnZfGmAmS-6Wzv8WMuGpfwfkg6Yc%3D&xsec_source=pc_search) для официальных обновлений. |
| 2026-02-19 | _Важно_ | Anthropic обновил раздел Authentication and Credential Use 2026-02-19. В нем указано, что OAuth authentication (Free/Pro/Max) предназначена только для Claude Code и Claude.ai; использование OAuth-токенов, полученных через Claude Free/Pro/Max, в любых других продуктах, инструментах или сервисах (включая Agent SDK), не допускается и может считаться нарушением Consumer Terms of Service. | Чтобы избежать потерь, временно не используйте Claude Code OAuth-интеграции. Оригинал: [Authentication and Credential Use](https://code.claude.com/docs/en/legal-and-compliance#authentication-and-credential-use). |
## Основные возможности
## О проекте
- **Лёгкая среда выполнения по умолчанию** — типичные CLI и статусные рабочие процессы выполняются в оболочке памяти в несколько мегабайт на релизных сборках.
- **Экономичное развёртывание** — разработан для плат за $10 и небольших облачных инстансов, без тяжёлых зависимостей среды выполнения.
- **Быстрый холодный старт** — однобинарная среда выполнения Rust обеспечивает почти мгновенный запуск команд и демона.
- **Портативная архитектура** — один бинарный файл для ARM, x86 и RISC-V с заменяемыми провайдерами/каналами/инструментами.
- **Локальный Gateway** — единая панель управления для сессий, каналов, инструментов, cron, SOP и событий.
- **Многоканальный почтовый ящик** — WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WebSocket и другие.
- **Многоагентная оркестрация (Hands)** — автономные рои агентов, работающие по расписанию и становящиеся умнее со временем.
- **Стандартные операционные процедуры (SOPs)** — событийная автоматизация рабочих процессов с MQTT, webhook, cron и триггерами периферийных устройств.
- **Веб-панель** — веб-интерфейс React 19 + Vite с чатом в реальном времени, браузером памяти, редактором конфигурации, менеджером cron и инспектором инструментов.
- **Аппаратные периферийные устройства** — ESP32, STM32 Nucleo, Arduino, Raspberry Pi GPIO через трейт `Peripheral`.
- **Первоклассные инструменты** — shell, файловый I/O, browser, git, web fetch/search, MCP, Jira, Notion, Google Workspace и 70+ других.
- **Хуки жизненного цикла** — перехват и модификация вызовов LLM, выполнения инструментов и сообщений на каждом этапе.
- **Платформа навыков** — встроенные, общественные и навыки рабочего пространства с аудитом безопасности.
- **Поддержка туннелей** — Cloudflare, Tailscale, ngrok, OpenVPN и пользовательские туннели для удалённого доступа.
ZeroClaw — это производительная и расширяемая инфраструктура автономного AI-агента. ZeroClaw — это **операционная система времени выполнения** для агентных рабочих процессов — инфраструктура, абстрагирующая модели, инструменты, память и выполнение, позволяя создавать агентов один раз и запускать где угодно.
### Почему команды выбирают ZeroClaw
- Нативно на Rust, единый бинарник, переносимость между ARM / x86 / RISC-V
- Архитектура на Trait (`Provider`, `Channel`, `Tool`, `Memory` и др.)
- Безопасные значения по умолчанию: pairing, явные allowlist, sandbox и scope-ограничения
- **Лёгкий по умолчанию:** маленький бинарный файл Rust, быстрый запуск, малый объём памяти.
- **Безопасный по дизайну:** сопряжение, строгая изоляция, явные списки разрешений, области рабочего пространства.
- **Полностью заменяемый:** основные системы — это трейты (провайдеры, каналы, инструменты, память, туннели).
- **Без привязки к вендору:** поддержка провайдеров, совместимых с OpenAI + подключаемые пользовательские эндпоинты.
## Почему выбирают ZeroClaw
## Снимок бенчмарков (ZeroClaw vs OpenClaw, воспроизводимый)
- **Лёгкий runtime по умолчанию**: Повседневные CLI-операции и `status` обычно укладываются в несколько МБ памяти.
- **Оптимизирован для недорогих сред**: Подходит для бюджетных плат и небольших cloud-инстансов без тяжёлой runtime-обвязки.
- **Быстрый cold start**: Архитектура одного Rust-бинарника ускоряет запуск основных команд и daemon-режима.
- **Портативная модель деплоя**: Единый подход для ARM / x86 / RISC-V и возможность менять providers/channels/tools.
Быстрый бенчмарк на локальной машине (macOS arm64, февраль 2026), нормализованный для edge-оборудования на 0.8 ГГц.
## Снимок бенчмарка (ZeroClaw vs OpenClaw, воспроизводимо)
| | OpenClaw | NanoBot | PicoClaw | ZeroClaw 🦀 |
| ------------------------- | ------------- | -------------- | --------------- | -------------------- |
| **Язык** | TypeScript | Python | Go | **Rust** |
| **ОЗУ** | > 1GB | > 100MB | < 10MB | **< 5MB** |
| **Запуск (ядро 0.8 ГГц)** | > 500s | > 30s | < 1s | **< 10ms** |
| **Размер бинарного файла** | ~28MB (dist) | N/A (Scripts) | ~8MB | **~8.8 MB** |
| **Стоимость** | Mac Mini $599 | Linux SBC ~$50 | Linux Board $10 | **Любое оборудование $10** |
Ниже — быстрый локальный сравнительный срез (macOS arm64, февраль 2026), нормализованный под 0.8GHz edge CPU.
> Примечания: результаты ZeroClaw измерены на релизных сборках с использованием `/usr/bin/time -l`. OpenClaw требует среду выполнения Node.js (обычно ~390 МБ дополнительных накладных расходов памяти), а NanoBot требует среду выполнения Python. PicoClaw и ZeroClaw — статические бинарные файлы. Показатели ОЗУ выше — это память времени выполнения; требования к компиляции при сборке выше.
| | OpenClaw | NanoBot | PicoClaw | ZeroClaw 🦀 |
|---|---|---|---|---|
| **Язык** | TypeScript | Python | Go | **Rust** |
| **RAM** | > 1GB | > 100MB | < 10MB | **< 5MB** |
| **Старт (ядро 0.8GHz)** | > 500s | > 30s | < 1s | **< 10ms** |
| **Размер бинарника** | ~28MB (dist) | N/A (скрипты) | ~8MB | **~8.8 MB** |
| **Стоимость** | Mac Mini $599 | Linux SBC ~$50 | Linux-плата $10 | **Любое железо за $10** |
> Примечание: результаты ZeroClaw получены на release-сборке с помощью `/usr/bin/time -l`. OpenClaw требует Node.js runtime; только этот runtime обычно добавляет около 390MB дополнительного потребления памяти. NanoBot требует Python runtime. PicoClaw и ZeroClaw — статические бинарники.
<p align="center">
<img src="docs/assets/zeroclaw-comparison.jpeg" alt="ZeroClaw vs OpenClaw Comparison" width="800" />
<img src="docs/assets/zeroclaw-comparison.jpeg" alt="Сравнение ZeroClaw и OpenClaw" width="800" />
</p>
### Воспроизводимое локальное измерение
### Локально воспроизводимое измерение
Метрики могут меняться вместе с кодом и toolchain, поэтому проверяйте результаты в своей среде:
```bash
cargo build --release
@ -254,502 +140,115 @@ ls -lh target/release/zeroclaw
/usr/bin/time -l target/release/zeroclaw status
```
## Всё, что мы построили
Текущие примерные значения из README (macOS arm64, 2026-02-18):
### Основная платформа
- Размер release-бинарника: `8.8M`
- `zeroclaw --help`: ~`0.02s`, пик памяти ~`3.9MB`
- `zeroclaw status`: ~`0.01s`, пик памяти ~`4.1MB`
- Gateway HTTP/WS/SSE панель управления с сессиями, присутствием, конфигурацией, cron, вебхуками, веб-панелью и сопряжением.
- CLI поверхность: `gateway`, `agent`, `onboard`, `doctor`, `status`, `service`, `migrate`, `auth`, `cron`, `channel`, `skills`.
- Цикл оркестрации агента с диспетчеризацией инструментов, построением промптов, классификацией сообщений и загрузкой памяти.
- Модель сессий с применением политики безопасности, уровнями автономности и шлюзом одобрения.
- Устойчивая обёртка провайдера с переключением при сбое, повторными попытками и маршрутизацией моделей через 20+ бэкендов LLM.
### Каналы
Каналы: WhatsApp (нативный), Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, DingTalk, Lark, Mattermost, Nextcloud Talk, Nostr, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WATI, Mochat, Linq, Notion, WebSocket, ClawdTalk.
За feature-флагами: Matrix (`channel-matrix`), Lark (`channel-lark`), Nostr (`channel-nostr`).
### Веб-панель
Веб-панель React 19 + Vite 6 + Tailwind CSS 4, подаваемая непосредственно из Gateway:
- **Панель управления** — обзор системы, состояние здоровья, время безотказной работы, отслеживание стоимости
- **Чат с агентом** — интерактивный чат с агентом
- **Память** — просмотр и управление записями памяти
- **Конфигурация** — просмотр и редактирование конфигурации
- **Cron** — управление запланированными задачами
- **Инструменты** — просмотр доступных инструментов
- **Логи** — просмотр журналов активности агента
- **Стоимость** — использование токенов и отслеживание стоимости
- **Доктор** — диагностика здоровья системы
- **Интеграции** — статус интеграций и настройка
- **Сопряжение** — управление сопряжением устройств
### Целевые прошивки
| Цель | Платформа | Назначение |
|--------|----------|---------|
| ESP32 | Espressif ESP32 | Беспроводной периферийный агент |
| ESP32-UI | ESP32 + Display | Агент с визуальным интерфейсом |
| STM32 Nucleo | STM32 (ARM Cortex-M) | Промышленное периферийное устройство |
| Arduino | Arduino | Базовый мост датчик/актуатор |
| Uno Q Bridge | Arduino Uno | Последовательный мост к агенту |
### Инструменты + автоматизация
- **Основные:** shell, чтение/запись/редактирование файлов, операции git, поиск glob, поиск по содержимому
- **Веб:** управление браузером, web fetch, web search, скриншоты, информация об изображении, чтение PDF
- **Интеграции:** Jira, Notion, Google Workspace, Microsoft 365, LinkedIn, Composio, Pushover
- **MCP:** обёртка инструментов Model Context Protocol + отложенные наборы инструментов
- **Планирование:** cron add/remove/update/run, инструмент расписания
- **Память:** recall, store, forget, knowledge, project intel
- **Продвинутые:** delegate (агент-агенту), swarm, переключение/маршрутизация моделей, операции безопасности, облачные операции
- **Оборудование:** информация о плате, карта памяти, чтение памяти (за feature-флагом)
### Среда выполнения + безопасность
- **Уровни автономности:** ReadOnly, Supervised (по умолчанию), Full.
- **Изоляция:** изоляция рабочего пространства, блокировка обхода путей, списки разрешённых команд, запрещённые пути, Landlock (Linux), Bubblewrap.
- **Ограничение частоты:** макс. действий в час, макс. стоимость в день (настраиваемые).
- **Шлюз одобрения:** интерактивное одобрение для операций среднего/высокого риска.
- **Аварийная остановка:** возможность экстренного отключения.
- **129+ тестов безопасности** в автоматизированном CI.
### Операции + упаковка
- Веб-панель подаётся непосредственно из Gateway.
- Поддержка туннелей: Cloudflare, Tailscale, ngrok, OpenVPN, пользовательская команда.
- Docker-адаптер среды выполнения для контейнеризованного выполнения.
- CI/CD: бета (авто при push) → стабильный (ручной запуск) → Docker, crates.io, Scoop, AUR, Homebrew, твит.
- Предсобранные бинарные файлы для Linux (x86_64, aarch64, armv7), macOS (x86_64, aarch64), Windows (x86_64).
## Конфигурация
Минимальный `~/.zeroclaw/config.toml`:
```toml
default_provider = "anthropic"
api_key = "sk-ant-..."
```
Полный справочник конфигурации: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md).
### Конфигурация каналов
**Telegram:**
```toml
[channels.telegram]
bot_token = "123456:ABC-DEF..."
```
**Discord:**
```toml
[channels.discord]
token = "your-bot-token"
```
**Slack:**
```toml
[channels.slack]
bot_token = "xoxb-..."
app_token = "xapp-..."
```
**WhatsApp:**
```toml
[channels.whatsapp]
enabled = true
```
**Matrix:**
```toml
[channels.matrix]
homeserver_url = "https://matrix.org"
username = "@bot:matrix.org"
password = "..."
```
**Signal:**
```toml
[channels.signal]
phone_number = "+1234567890"
```
### Конфигурация туннелей
```toml
[tunnel]
kind = "cloudflare" # or "tailscale", "ngrok", "openvpn", "custom", "none"
```
Подробности: [Справочник каналов](docs/reference/api/channels-reference.md) · [Справочник конфигурации](docs/reference/api/config-reference.md)
### Поддержка среды выполнения (текущая)
- **`native`** (по умолчанию) — прямое выполнение процесса, самый быстрый путь, идеально для доверенных сред.
- **`docker`** — полная контейнерная изоляция, принудительные политики безопасности, требуется Docker.
Установите `runtime.kind = "docker"` для строгой изоляции или сетевой изоляции.
## Аутентификация по подписке (OpenAI Codex / Claude Code / Gemini)
ZeroClaw поддерживает нативные профили аутентификации по подписке (мультиаккаунт, шифрование в состоянии покоя).
- Файл хранилища: `~/.zeroclaw/auth-profiles.json`
- Ключ шифрования: `~/.zeroclaw/.secret_key`
- Формат id профиля: `<provider>:<profile_name>` (пример: `openai-codex:work`)
## Установка в 1 клик
```bash
# OpenAI Codex OAuth (ChatGPT subscription)
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./install.sh
```
Для полной инициализации окружения: `./install.sh --install-system-deps --install-rust` (для системных пакетов может потребоваться `sudo`).
Подробности: [`docs/setup-guides/one-click-bootstrap.md`](docs/setup-guides/one-click-bootstrap.md).
## Быстрый старт
### Homebrew (macOS/Linuxbrew)
```bash
brew install zeroclaw
```
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
cargo build --release --locked
cargo install --path . --force --locked
zeroclaw onboard --api-key sk-... --provider openrouter
zeroclaw onboard
zeroclaw agent -m "Hello, ZeroClaw!"
# default: 127.0.0.1:42617
zeroclaw gateway
zeroclaw daemon
```
## Subscription Auth (OpenAI Codex / Claude Code)
ZeroClaw поддерживает нативные профили авторизации на основе подписки (мультиаккаунт, шифрование при хранении).
- Файл хранения: `~/.zeroclaw/auth-profiles.json`
- Ключ шифрования: `~/.zeroclaw/.secret_key`
- Формат Profile ID: `<provider>:<profile_name>` (пример: `openai-codex:work`)
OpenAI Codex OAuth (подписка ChatGPT):
```bash
# Рекомендуется для серверов/headless-окружений
zeroclaw auth login --provider openai-codex --device-code
# Gemini OAuth
zeroclaw auth login --provider gemini --profile default
# Браузерный/callback-поток с paste-фолбэком
zeroclaw auth login --provider openai-codex --profile default
zeroclaw auth paste-redirect --provider openai-codex --profile default
# Anthropic setup-token
zeroclaw auth paste-token --provider anthropic --profile default --auth-kind authorization
# Check / refresh / switch profile
# Проверка / обновление / переключение профиля
zeroclaw auth status
zeroclaw auth refresh --provider openai-codex --profile default
zeroclaw auth use --provider openai-codex --profile work
```
# Run the agent with subscription auth
Claude Code / Anthropic setup-token:
```bash
# Вставка subscription/setup token (режим Authorization header)
zeroclaw auth paste-token --provider anthropic --profile default --auth-kind authorization
# Команда-алиас
zeroclaw auth setup-token --provider anthropic --profile default
```
Запуск agent с subscription auth:
```bash
zeroclaw agent --provider openai-codex -m "hello"
zeroclaw agent --provider openai-codex --auth-profile openai-codex:work -m "hello"
# Anthropic поддерживает и API key, и auth token через переменные окружения:
# ANTHROPIC_AUTH_TOKEN, ANTHROPIC_OAUTH_TOKEN, ANTHROPIC_API_KEY
zeroclaw agent --provider anthropic -m "hello"
```
## Рабочее пространство агента + навыки
## Вклад и лицензия
Корень рабочего пространства: `~/.zeroclaw/workspace/` (настраивается через конфигурацию).
Внедряемые файлы промптов:
- `IDENTITY.md` — личность и роль агента
- `USER.md` — контекст и предпочтения пользователя
- `MEMORY.md` — долгосрочные факты и уроки
- `AGENTS.md` — соглашения сессий и правила инициализации
- `SOUL.md` — основная идентичность и принципы работы
Навыки: `~/.zeroclaw/workspace/skills/<skill>/SKILL.md` или `SKILL.toml`.
```bash
# List installed skills
zeroclaw skills list
# Install from git
zeroclaw skills install https://github.com/user/my-skill.git
# Security audit before install
zeroclaw skills audit https://github.com/user/my-skill.git
# Remove a skill
zeroclaw skills remove my-skill
```
## Команды CLI
```bash
# Workspace management
zeroclaw onboard # Guided setup wizard
zeroclaw status # Show daemon/agent status
zeroclaw doctor # Run system diagnostics
# Gateway + daemon
zeroclaw gateway # Start gateway server (127.0.0.1:42617)
zeroclaw daemon # Start full autonomous runtime
# Agent
zeroclaw agent # Interactive chat mode
zeroclaw agent -m "message" # Single message mode
# Service management
zeroclaw service install # Install as OS service (launchd/systemd)
zeroclaw service start|stop|restart|status
# Channels
zeroclaw channel list # List configured channels
zeroclaw channel doctor # Check channel health
zeroclaw channel bind-telegram 123456789
# Cron + scheduling
zeroclaw cron list # List scheduled jobs
zeroclaw cron add "*/5 * * * *" --prompt "Check system health"
zeroclaw cron remove <id>
# Memory
zeroclaw memory list # List memory entries
zeroclaw memory get <key> # Retrieve a memory
zeroclaw memory stats # Memory statistics
# Auth profiles
zeroclaw auth login --provider <name>
zeroclaw auth status
zeroclaw auth use --provider <name> --profile <profile>
# Hardware peripherals
zeroclaw hardware discover # Scan for connected devices
zeroclaw peripheral list # List connected peripherals
zeroclaw peripheral flash # Flash firmware to device
# Migration
zeroclaw migrate openclaw --dry-run
zeroclaw migrate openclaw
# Shell completions
source <(zeroclaw completions bash)
zeroclaw completions zsh > ~/.zfunc/_zeroclaw
```
Полный справочник команд: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
<!-- markdownlint-disable MD001 MD024 -->
## Предварительные требования
<details>
<summary><strong>Windows</strong></summary>
#### Обязательные
1. **Visual Studio Build Tools** (предоставляет линкер MSVC и Windows SDK):
```powershell
winget install Microsoft.VisualStudio.2022.BuildTools
```
Во время установки (или через Visual Studio Installer) выберите рабочую нагрузку **"Desktop development with C++"**.
2. **Набор инструментов Rust:**
```powershell
winget install Rustlang.Rustup
```
После установки откройте новый терминал и выполните `rustup default stable`, чтобы убедиться, что стабильный набор инструментов активен.
3. **Проверьте**, что оба работают:
```powershell
rustc --version
cargo --version
```
#### Необязательные
- **Docker Desktop** — требуется только при использовании [изолированной среды выполнения Docker](#поддержка-среды-выполнения-текущая) (`runtime.kind = "docker"`). Установите через `winget install Docker.DockerDesktop`.
</details>
<details>
<summary><strong>Linux / macOS</strong></summary>
#### Обязательные
1. **Средства сборки:**
- **Linux (Debian/Ubuntu):** `sudo apt install build-essential pkg-config`
- **Linux (Fedora/RHEL):** `sudo dnf group install development-tools && sudo dnf install pkg-config`
- **macOS:** Установите Xcode Command Line Tools: `xcode-select --install`
2. **Набор инструментов Rust:**
```bash
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
```
Подробности на [rustup.rs](https://rustup.rs).
3. **Проверьте**, что оба работают:
```bash
rustc --version
cargo --version
```
#### Однострочный установщик
Или пропустите шаги выше и установите всё (системные зависимости, Rust, ZeroClaw) одной командой:
```bash
curl -LsSf https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/install.sh | bash
```
#### Требования к ресурсам для компиляции
Сборка из исходного кода требует больше ресурсов, чем запуск результирующего бинарного файла:
| Ресурс | Минимум | Рекомендуемый |
| -------------- | ------- | ----------- |
| **ОЗУ + swap** | 2 GB | 4 GB+ |
| **Свободное место на диске** | 6 GB | 10 GB+ |
Если ваш хост ниже минимума, используйте предсобранные бинарные файлы:
```bash
./install.sh --prefer-prebuilt
```
Чтобы требовать установку только бинарного файла без сборки из исходников:
```bash
./install.sh --prebuilt-only
```
#### Необязательные
- **Docker** — требуется только при использовании [изолированной среды выполнения Docker](#поддержка-среды-выполнения-текущая) (`runtime.kind = "docker"`). Установите через менеджер пакетов или [docker.com](https://docs.docker.com/engine/install/).
> **Примечание:** По умолчанию `cargo build --release` использует `codegen-units=1` для снижения пиковой нагрузки при компиляции. Для более быстрой сборки на мощных машинах используйте `cargo build --profile release-fast`.
</details>
<!-- markdownlint-enable MD001 MD024 -->
### Предсобранные бинарные файлы
Артефакты релизов публикуются для:
- Linux: `x86_64`, `aarch64`, `armv7`
- macOS: `x86_64`, `aarch64`
- Windows: `x86_64`
Скачайте последние артефакты:
<https://github.com/zeroclaw-labs/zeroclaw/releases/latest>
## Документация
Используйте это, когда вы прошли онбординг и хотите более глубокий справочник.
- Начните с [индекса документации](docs/README.md) для навигации и «что где».
- Прочитайте [обзор архитектуры](docs/architecture.md) для полной модели системы.
- Используйте [справочник конфигурации](docs/reference/api/config-reference.md), когда вам нужен каждый ключ и пример.
- Управляйте Gateway по инструкции с [операционным руководством](docs/ops/operations-runbook.md).
- Следуйте [ZeroClaw Onboard](#быстрый-старт) для управляемой настройки.
- Устраняйте типичные сбои с помощью [руководства по устранению неполадок](docs/ops/troubleshooting.md).
- Ознакомьтесь с [руководством по безопасности](docs/security/README.md) перед открытием чего-либо.
### Справочная документация
- Хаб документации: [docs/README.md](docs/README.md)
- Единое оглавление: [docs/SUMMARY.md](docs/SUMMARY.md)
- Справочник команд: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
- Справочник конфигурации: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md)
- Справочник провайдеров: [docs/reference/api/providers-reference.md](docs/reference/api/providers-reference.md)
- Справочник каналов: [docs/reference/api/channels-reference.md](docs/reference/api/channels-reference.md)
- Операционное руководство: [docs/ops/operations-runbook.md](docs/ops/operations-runbook.md)
- Устранение неполадок: [docs/ops/troubleshooting.md](docs/ops/troubleshooting.md)
### Документация по сотрудничеству
- Руководство по участию: [CONTRIBUTING.md](CONTRIBUTING.md)
- Политика рабочего процесса PR: [docs/contributing/pr-workflow.md](docs/contributing/pr-workflow.md)
- Руководство по CI-процессу: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- Руководство рецензента: [docs/contributing/reviewer-playbook.md](docs/contributing/reviewer-playbook.md)
- Политика раскрытия уязвимостей: [SECURITY.md](SECURITY.md)
- Шаблон документации: [docs/contributing/doc-template.md](docs/contributing/doc-template.md)
### Развёртывание + операции
- Руководство по сетевому развёртыванию: [docs/ops/network-deployment.md](docs/ops/network-deployment.md)
- Руководство по прокси-агенту: [docs/ops/proxy-agent-playbook.md](docs/ops/proxy-agent-playbook.md)
- Руководства по оборудованию: [docs/hardware/README.md](docs/hardware/README.md)
## Smooth Crab 🦀
ZeroClaw был создан для smooth crab 🦀 — быстрого и эффективного ИИ-ассистента. Создан Argenis De La Rosa и сообществом.
- [zeroclawlabs.ai](https://zeroclawlabs.ai)
- [@zeroclawlabs](https://x.com/zeroclawlabs)
## Поддержите ZeroClaw
Если ZeroClaw помогает вашей работе и вы хотите поддержать дальнейшую разработку, вы можете пожертвовать здесь:
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=for-the-badge&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
### 🙏 Особая благодарность
Сердечная благодарность сообществам и институтам, которые вдохновляют и питают эту работу с открытым исходным кодом:
- **Harvard University** — за развитие интеллектуального любопытства и расширение границ возможного.
- **MIT** — за продвижение открытых знаний, открытого кода и веры в то, что технологии должны быть доступны каждому.
- **Sundai Club** — за сообщество, энергию и неустанное стремление создавать вещи, которые имеют значение.
- **Мир и далее** 🌍✨ — каждому участнику, мечтателю и создателю, делающему открытый код силой добра. Это для вас.
Мы строим открыто, потому что лучшие идеи приходят отовсюду. Если вы это читаете, вы часть этого. Добро пожаловать. 🦀❤️
## Участие
Новичок в ZeroClaw? Ищите задачи с меткой [`good first issue`](https://github.com/zeroclaw-labs/zeroclaw/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) — см. наше [Руководство по участию](CONTRIBUTING.md#first-time-contributors) для начала. AI/vibe-coded PR приветствуются! 🤖
См. [CONTRIBUTING.md](CONTRIBUTING.md) и [CLA.md](docs/contributing/cla.md). Реализуйте трейт, отправьте PR:
- Руководство по CI-процессу: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- Новый `Provider``src/providers/`
- Новый `Channel``src/channels/`
- Новый `Observer``src/observability/`
- Новый `Tool``src/tools/`
- Новый `Memory``src/memory/`
- Новый `Tunnel``src/tunnel/`
- Новый `Peripheral``src/peripherals/`
- Новый `Skill``~/.zeroclaw/workspace/skills/<name>/`
- Contribution guide: [`CONTRIBUTING.md`](CONTRIBUTING.md)
- PR workflow: [`docs/contributing/pr-workflow.md`](docs/contributing/pr-workflow.md)
- Reviewer playbook: [`docs/contributing/reviewer-playbook.md`](docs/contributing/reviewer-playbook.md)
- License: MIT or Apache 2.0 ([`LICENSE-MIT`](LICENSE-MIT), [`LICENSE-APACHE`](LICENSE-APACHE), [`NOTICE`](NOTICE))
<!-- BEGIN:RECENT_CONTRIBUTORS -->
### 🌟 Recent Contributors (v0.3.1)
3 contributors shipped features, fixes, and improvements in this release cycle:
- **Argenis**
- **argenis de la rosa**
- **Claude Opus 4.6**
Thank you to everyone who opened issues, reviewed PRs, translated docs, and helped test. Every contribution matters. 🦀
<!-- END:RECENT_CONTRIBUTORS -->
## ⚠️ Официальный репозиторий и предупреждение об имитации
**Это единственный официальный репозиторий ZeroClaw:**
> https://github.com/zeroclaw-labs/zeroclaw
Любой другой репозиторий, организация, домен или пакет, претендующий на звание «ZeroClaw» или подразумевающий связь с ZeroClaw Labs, является **неавторизованным и не связанным с этим проектом**. Известные неавторизованные форки будут перечислены в [TRADEMARK.md](docs/maintainers/trademark.md).
Если вы столкнётесь с имитацией или неправомерным использованием товарного знака, пожалуйста, [откройте issue](https://github.com/zeroclaw-labs/zeroclaw/issues).
---
## Лицензия
ZeroClaw распространяется под двойной лицензией для максимальной открытости и защиты участников:
| Лицензия | Случай использования |
|---|---|
| [MIT](LICENSE-MIT) | Открытый код, исследования, академическое, личное использование |
| [Apache 2.0](LICENSE-APACHE) | Патентная защита, институциональное, коммерческое развёртывание |
Вы можете выбрать любую лицензию. **Участники автоматически предоставляют права по обеим** — см. [CLA.md](docs/contributing/cla.md) для полного соглашения участника.
### Товарный знак
Название и логотип **ZeroClaw** являются товарными знаками ZeroClaw Labs. Эта лицензия не предоставляет разрешения на их использование для подразумевания одобрения или принадлежности. См. [TRADEMARK.md](docs/maintainers/trademark.md) для разрешённых и запрещённых использований.
### Защита участников
- Вы **сохраняете авторские права** на свои вклады
- **Патентное предоставление** (Apache 2.0) защищает вас от патентных претензий других участников
- Ваши вклады **постоянно атрибутированы** в истории коммитов и [NOTICE](NOTICE)
- Никакие права на товарный знак не передаются при участии
---
**ZeroClaw** — Нулевые накладные расходы. Нулевые компромиссы. Развёртывайте где угодно. Заменяйте что угодно. 🦀
## Участники
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors">
<img src="https://contrib.rocks/image?repo=zeroclaw-labs/zeroclaw" alt="ZeroClaw contributors" />
</a>
Этот список генерируется из графа участников GitHub и обновляется автоматически.
## История звёзд
<p align="center">
<a href="https://www.star-history.com/#zeroclaw-labs/zeroclaw&type=date&legend=top-left">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&theme=dark&legend=top-left" />
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
</picture>
</a>
</p>
Для полной и исчерпывающей информации (архитектура, все команды, API, разработка) используйте основной английский документ: [`README.md`](README.md).

View File

@ -1,29 +1,23 @@
<p align="center">
<img src="https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/docs/assets/zeroclaw-banner.png" alt="ZeroClaw" width="600" />
<img src="zeroclaw.png" alt="ZeroClaw" width="200" />
</p>
<h1 align="center">🦀 ZeroClaw — Personlig AI-assistent</h1>
<h1 align="center">ZeroClaw 🦀</h1>
<p align="center">
<strong>Noll overhead. Noll kompromiss. 100% Rust. 100% Agnostisk.</strong><br>
⚡️ <strong>Körs på $10-hårdvara med <5MB RAM: Det är 99% mindre minne än OpenClaw och 98% billigare än en Mac mini!</strong>
⚡️ <strong>Kör på $10 hårdvara med <5MB RAM: Det är 99% mindre minne än OpenClaw och 98% billigare än en Mac mini!</strong>
</p>
<p align="center">
<a href="LICENSE-APACHE"><img src="https://img.shields.io/badge/license-MIT%20OR%20Apache%202.0-blue.svg" alt="License: MIT OR Apache-2.0" /></a>
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors"><img src="https://img.shields.io/github/contributors/zeroclaw-labs/zeroclaw?color=green" alt="Contributors" /></a>
<a href="NOTICE"><img src="https://img.shields.io/badge/contributors-27+-green.svg" alt="Contributors" /></a>
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
<a href="https://x.com/zeroclawlabs?s=21"><img src="https://img.shields.io/badge/X-%40zeroclawlabs-000000?style=flat&logo=x&logoColor=white" alt="X: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclawlabs"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
<a href="https://discord.com/invite/wDshRVqRjx"><img src="https://img.shields.io/badge/Discord-Join-5865F2?style=flat&logo=discord&logoColor=white" alt="Discord" /></a>
<a href="https://www.instagram.com/therealzeroclaw"><img src="https://img.shields.io/badge/Instagram-%40therealzeroclaw-E4405F?style=flat&logo=instagram&logoColor=white" alt="Instagram: @therealzeroclaw" /></a>
<a href="https://www.tiktok.com/@zeroclawlabs"><img src="https://img.shields.io/badge/TikTok-%40zeroclawlabs-000000?style=flat&logo=tiktok&logoColor=white" alt="TikTok: @zeroclawlabs" /></a>
<a href="https://www.rednote.com/user/profile/69b735e6000000002603927e"><img src="https://img.shields.io/badge/RedNote-Official-FF2442?style=flat" alt="RedNote" /></a>
<a href="https://www.reddit.com/r/zeroclawlabs/"><img src="https://img.shields.io/badge/Reddit-r%2Fzeroclawlabs-FF4500?style=flat&logo=reddit&logoColor=white" alt="Reddit: r/zeroclawlabs" /></a>
</p>
<p align="center">
Byggt av studenter och medlemmar i Harvard-, MIT- och Sundai.Club-gemenskaperna.
<a href="https://zeroclawlabs.cn/group.jpg"><img src="https://img.shields.io/badge/WeChat-Group-B7D7A8?logo=wechat&logoColor=white" alt="WeChat Group" /></a>
<a href="https://www.xiaohongshu.com/user/profile/67cbfc43000000000d008307?xsec_token=AB73VnYnGNx5y36EtnnZfGmAmS-6Wzv8WMuGpfwfkg6Yc%3D&xsec_source=pc_search"><img src="https://img.shields.io/badge/Xiaohongshu-Official-FF2442?style=flat" alt="Xiaohongshu: Official" /></a>
<a href="https://t.me/zeroclawlabs"><img src="https://img.shields.io/badge/Telegram-%40zeroclawlabs-26A5E4?style=flat&logo=telegram&logoColor=white" alt="Telegram: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclaw"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
</p>
<p align="center">
@ -61,695 +55,149 @@ Byggt av studenter och medlemmar i Harvard-, MIT- och Sundai.Club-gemenskaperna.
<a href="README.nb.md">🇳🇴 Norsk</a>
</p>
ZeroClaw är en personlig AI-assistent som du kör på dina egna enheter. Den svarar dig via de kanaler du redan använder (WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work med flera). Den har en webbpanel för realtidskontroll och kan ansluta till hårdvaruperiferienheter (ESP32, STM32, Arduino, Raspberry Pi). Gateway är bara kontrollplanet — produkten är assistenten.
---
Om du vill ha en personlig, enanvändarassistent som känns lokal, snabb och alltid tillgänglig, är det här lösningen.
<!-- BEGIN:WHATS_NEW -->
<p align="center">
<a href="https://zeroclawlabs.ai">Webbplats</a> ·
<a href="docs/README.md">Dokumentation</a> ·
<a href="docs/architecture.md">Arkitektur</a> ·
<a href="#snabbstart">Kom igång</a> ·
<a href="#migrera-från-openclaw">Migrera från OpenClaw</a> ·
<a href="docs/ops/troubleshooting.md">Felsökning</a> ·
<a href="https://discord.com/invite/wDshRVqRjx">Discord</a>
</p>
### 🚀 What's New in v0.3.1 (March 2026)
> **Rekommenderad konfiguration:** kör `zeroclaw onboard` i din terminal. ZeroClaw Onboard guidar dig steg för steg genom att konfigurera gateway, arbetsyta, kanaler och leverantör. Det är den rekommenderade installationsvägen och fungerar på macOS, Linux och Windows (via WSL2). Ny installation? Börja här: [Kom igång](#snabbstart)
| Area | Highlights |
|---|---|
| ci | add Termux (aarch64-linux-android) release target |
### Prenumerationsautentisering (OAuth)
<!-- END:WHATS_NEW -->
- **OpenAI Codex** (ChatGPT-prenumeration)
- **Gemini** (Google OAuth)
- **Anthropic** (API-nyckel eller autentiseringstoken)
## Vad är ZeroClaw?
Modellnotering: även om många leverantörer/modeller stöds, använd den starkaste senaste generationens modell som är tillgänglig för dig för bästa upplevelse. Se [Onboarding](#snabbstart).
ZeroClaw är en lättvikts, föränderlig och utökningsbar AI-assistent-infrastruktur byggd i Rust. Den ansluter olika LLM-leverantörer (Anthropic, OpenAI, Google, Ollama, etc.) via ett enhetligt gränssnitt och stöder flera kanaler (Telegram, Matrix, CLI, etc.).
Modellkonfiguration + CLI: [Leverantörsreferens](docs/reference/api/providers-reference.md)
Autentiseringsprofil-rotation (OAuth vs API-nycklar) + failover: [Modell-failover](docs/reference/api/providers-reference.md)
### Huvudfunktioner
## Installation (rekommenderad)
- **🦀 Skrivet i Rust**: Hög prestanda, minnessäkerhet och nollkostnadsabstraktioner
- **🔌 Leverantörsagnostisk**: Stöder OpenAI, Anthropic, Google Gemini, Ollama och andra
- **📱 Multi-kanal**: Telegram, Matrix (med E2EE), CLI och andra
- **🧠 Pluggbart minne**: SQLite och Markdown-backends
- **🛠️ Utökningsbara verktyg**: Lägg enkelt till anpassade verktyg
- **🔒 Säkerhet först**: Omvänd proxy, integritetsförst-design
Körmiljö: Rust stable toolchain. Enda binär, inga körtidsberoenden.
### Homebrew (macOS/Linuxbrew)
```bash
brew install zeroclaw
```
### Ett-klicks-installation
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./install.sh
```
`zeroclaw onboard` körs automatiskt efter installationen för att konfigurera din arbetsyta och leverantör.
---
## Snabbstart
Fullständig nybörjarguide (autentisering, parkoppling, kanaler): [Kom igång](docs/setup-guides/one-click-bootstrap.md)
```bash
# Installera + onboard
./install.sh --api-key "sk-..." --provider openrouter
# Starta gateway (webhook-server + webbpanel)
zeroclaw gateway # standard: 127.0.0.1:42617
zeroclaw gateway --port 0 # slumpmässig port (säkerhetshärdad)
# Prata med assistenten
zeroclaw agent -m "Hello, ZeroClaw!"
# Interaktivt läge
zeroclaw agent
# Starta full autonom körmiljö (gateway + kanaler + cron + hands)
zeroclaw daemon
# Kontrollera status
zeroclaw status
# Kör diagnostik
zeroclaw doctor
```
Uppgraderar du? Kör `zeroclaw doctor` efter uppdatering.
### Från källkod (utveckling)
### Krav
- Rust 1.70+
- En LLM-leverantörs API-nyckel (Anthropic, OpenAI, etc.)
### Installation
```bash
# Klona repositoryt
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
cargo build --release --locked
cargo install --path . --force --locked
zeroclaw onboard
```
> **Utvecklar-fallback (ingen global installation):** prefixera kommandon med `cargo run --release --` (exempel: `cargo run --release -- status`).
## Migrera från OpenClaw
ZeroClaw kan importera din OpenClaw-arbetsyta, minne och konfiguration:
```bash
# Förhandsgranska vad som migreras (säkert, skrivskyddat)
zeroclaw migrate openclaw --dry-run
# Kör migreringen
zeroclaw migrate openclaw
```
Detta migrerar dina minnesposter, arbetsytefiler och konfiguration från `~/.openclaw/` till `~/.zeroclaw/`. Konfiguration konverteras automatiskt från JSON till TOML.
## Säkerhetsstandarder (DM-åtkomst)
ZeroClaw ansluter till riktiga meddelandeytor. Behandla inkommande DM som opålitlig indata.
Fullständig säkerhetsguide: [SECURITY.md](SECURITY.md)
Standardbeteende på alla kanaler:
- **DM-parkoppling** (standard): okända avsändare får en kort parkopplingskod och boten behandlar inte deras meddelande.
- Godkänn med: `zeroclaw pairing approve <channel> <code>` (sedan läggs avsändaren till i en lokal tillåtlista).
- Offentliga inkommande DM kräver ett explicit opt-in i `config.toml`.
- Kör `zeroclaw doctor` för att hitta riskfyllda eller felkonfigurerade DM-policyer.
**Autonominivåer:**
| Nivå | Beteende |
|------|----------|
| `ReadOnly` | Agenten kan observera men inte agera |
| `Supervised` (standard) | Agenten agerar med godkännande för medel-/högriskoperationer |
| `Full` | Agenten agerar autonomt inom policygränser |
**Sandboxlager:** arbetsyteisolering, sökvägstraversblockering, kommandotillåtlistor, förbjudna sökvägar (`/etc`, `/root`, `~/.ssh`), hastighetsbegränsning (max åtgärder/timme, kostnad/dag-gränser).
<!-- BEGIN:WHATS_NEW -->
<!-- END:WHATS_NEW -->
### 📢 Meddelanden
Använd denna tavla för viktiga meddelanden (brytande ändringar, säkerhetsrådgivningar, underhållsfönster och releaseblockerare).
| Datum (UTC) | Nivå | Meddelande | Åtgärd |
| ----------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 2026-02-19 | _Kritisk_ | Vi är **inte affilierade** med `openagen/zeroclaw`, `zeroclaw.org` eller `zeroclaw.net`. Domänerna `zeroclaw.org` och `zeroclaw.net` pekar för närvarande till `openagen/zeroclaw`-forken, och den domänen/repositoryt utger sig för att vara vår officiella webbplats/projekt. | Lita inte på information, binärer, insamlingar eller meddelanden från dessa källor. Använd bara [detta repository](https://github.com/zeroclaw-labs/zeroclaw) och våra verifierade sociala konton. |
| 2026-02-21 | _Viktigt_ | Vår officiella webbplats är nu live: [zeroclawlabs.ai](https://zeroclawlabs.ai). Tack för ert tålamod medan vi förberedde lanseringen. Vi ser fortfarande imitationsförsök, så **gå inte** med i några investerings- eller insamlingsaktiviteter som hävdar ZeroClaw-namnet om de inte publicerats via våra officiella kanaler. | Använd [detta repository](https://github.com/zeroclaw-labs/zeroclaw) som enda sanningskälla. Följ [X (@zeroclawlabs)](https://x.com/zeroclawlabs?s=21), [Facebook (Grupp)](https://www.facebook.com/groups/zeroclawlabs) och [Reddit (r/zeroclawlabs)](https://www.reddit.com/r/zeroclawlabs/) för officiella uppdateringar. |
| 2026-02-19 | _Viktigt_ | Anthropic uppdaterade villkoren för autentisering och inloggningsanvändning 2026-02-19. Claude Code OAuth-tokens (Free, Pro, Max) är avsedda uteslutande för Claude Code och Claude.ai; att använda OAuth-tokens från Claude Free/Pro/Max i någon annan produkt, verktyg eller tjänst (inklusive Agent SDK) är inte tillåtet och kan bryta mot Consumer Terms of Service. | Undvik tillfälligt Claude Code OAuth-integrationer för att förhindra potentiell förlust. Originalklausul: [Authentication and Credential Use](https://code.claude.com/docs/en/legal-and-compliance#authentication-and-credential-use). |
## Höjdpunkter
- **Lean körmiljö som standard** — vanliga CLI- och statusarbetsflöden körs i ett fåmegabyte-minnesutrymme på release-byggen.
- **Kostnadseffektiv distribution** — designad för $10-kort och små molninstanser, inga tunga körtidsberoenden.
- **Snabba kallstarter** — enkel binär Rust-körmiljö håller kommando- och daemon-uppstart nära ögonblicklig.
- **Portabel arkitektur** — en binär över ARM, x86 och RISC-V med utbytbara providers/channels/tools.
- **Lokal-först Gateway** — enda kontrollplan för sessioner, kanaler, verktyg, cron, SOP:er och händelser.
- **Multikanalinkorg** — WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WebSocket med flera.
- **Multiagentorkestrering (Hands)** — autonoma agentsvärmar som körs på schema och blir smartare med tiden.
- **Standardoperationsprocedurer (SOPs)** — händelsedriven arbetsflödesautomatisering med MQTT, webhook, cron och periferiutlösare.
- **Webbpanel** — React 19 + Vite webb-UI med realtidschatt, minnesutforskare, konfigurationsredigerare, cron-hanterare och verktygsinspektor.
- **Hårdvaruperiferienheter** — ESP32, STM32 Nucleo, Arduino, Raspberry Pi GPIO via `Peripheral`-traiten.
- **Förstklassiga verktyg** — shell, fil-I/O, webbläsare, git, web fetch/search, MCP, Jira, Notion, Google Workspace och 70+ fler.
- **Livscykelkrokar** — fånga upp och modifiera LLM-anrop, verktygsexekveringar och meddelanden i varje steg.
- **Färdighetsplattform** — medföljande, community- och arbetsytefärdigheter med säkerhetsgranskning.
- **Tunnelstöd** — Cloudflare, Tailscale, ngrok, OpenVPN och anpassade tunnlar för fjärråtkomst.
### Varför team väljer ZeroClaw
- **Lean som standard:** liten Rust-binär, snabb start, lågt minnesavtryck.
- **Säker från grunden:** parkoppling, strikt sandboxning, explicita tillåtlistor, arbetsyteavgränsning.
- **Fullt utbytbar:** kärnssystem är traits (providers, channels, tools, memory, tunnels).
- **Inget leverantörslås:** OpenAI-kompatibelt leverantörsstöd + pluggbara anpassade endpoints.
## Benchmarkögonblicksbild (ZeroClaw vs OpenClaw, Reproducerbar)
Lokal maskin-snabbtest (macOS arm64, feb 2026) normaliserat för 0.8GHz edge-hårdvara.
| | OpenClaw | NanoBot | PicoClaw | ZeroClaw 🦀 |
| ------------------------- | ------------- | -------------- | --------------- | -------------------- |
| **Språk** | TypeScript | Python | Go | **Rust** |
| **RAM** | > 1GB | > 100MB | < 10MB | **< 5MB** |
| **Uppstart (0.8GHz kärna)** | > 500s | > 30s | < 1s | **< 10ms** |
| **Binärstorlek** | ~28MB (dist) | N/A (Scripts) | ~8MB | **~8.8 MB** |
| **Kostnad** | Mac Mini $599 | Linux SBC ~$50 | Linux Board $10 | **Vilken hårdvara som helst $10** |
> Noteringar: ZeroClaw-resultat mäts på release-byggen med `/usr/bin/time -l`. OpenClaw kräver Node.js-körmiljö (typiskt ~390MB extra minnesoverhead), medan NanoBot kräver Python-körmiljö. PicoClaw och ZeroClaw är statiska binärer. RAM-siffrorna ovan är körtidsminne; kompileringskrav vid byggtid är högre.
<p align="center">
<img src="docs/assets/zeroclaw-comparison.jpeg" alt="ZeroClaw vs OpenClaw jämförelse" width="800" />
</p>
### Reproducerbar lokal mätning
```bash
# Bygg
cargo build --release
ls -lh target/release/zeroclaw
/usr/bin/time -l target/release/zeroclaw --help
/usr/bin/time -l target/release/zeroclaw status
# Kör
cargo run --release
```
## Allt vi byggt hittills
### Med Docker
### Kärnplattform
- Gateway HTTP/WS/SSE-kontrollplan med sessioner, närvaro, konfiguration, cron, webhooks, webbpanel och parkoppling.
- CLI-yta: `gateway`, `agent`, `onboard`, `doctor`, `status`, `service`, `migrate`, `auth`, `cron`, `channel`, `skills`.
- Agentorkestreringsloop med verktygsdistribution, promptkonstruktion, meddelandeklassificering och minnesinläsning.
- Sessionsmodell med säkerhetspolicyefterlevnad, autonominivåer och godkännandeportar.
- Motståndskraftig leverantörswrapper med failover, retry och modellroutning över 20+ LLM-backends.
### Kanaler
Kanaler: WhatsApp (nativ), Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, DingTalk, Lark, Mattermost, Nextcloud Talk, Nostr, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WATI, Mochat, Linq, Notion, WebSocket, ClawdTalk.
Funktionsgated: Matrix (`channel-matrix`), Lark (`channel-lark`), Nostr (`channel-nostr`).
### Webbpanel
React 19 + Vite 6 + Tailwind CSS 4 webbpanel serverad direkt från Gateway:
- **Dashboard** — systemöversikt, hälsostatus, drifttid, kostnadsspårning
- **Agentchatt** — interaktiv chatt med agenten
- **Minne** — bläddra och hantera minnesposter
- **Konfiguration** — visa och redigera konfiguration
- **Cron** — hantera schemalagda uppgifter
- **Verktyg** — bläddra tillgängliga verktyg
- **Loggar** — visa agentaktivitetsloggar
- **Kostnad** — tokenanvändning och kostnadsspårning
- **Doktor** — systemhälsodiagnostik
- **Integrationer** — integrationsstatus och konfiguration
- **Parkoppling** — hantering av enhetsparkoppling
### Firmware-mål
| Mål | Plattform | Syfte |
|-----|-----------|-------|
| ESP32 | Espressif ESP32 | Trådlös periferienhetagent |
| ESP32-UI | ESP32 + Display | Agent med visuellt gränssnitt |
| STM32 Nucleo | STM32 (ARM Cortex-M) | Industriell periferienhet |
| Arduino | Arduino | Grundläggande sensor-/aktuatorbrygga |
| Uno Q Bridge | Arduino Uno | Seriell brygga till agent |
### Verktyg + automatisering
- **Kärna:** shell, filläsning/skrivning/redigering, git-operationer, glob-sökning, innehållssökning
- **Webb:** webbläsarkontroll, web fetch, webbsökning, skärmdump, bildinformation, PDF-läsning
- **Integrationer:** Jira, Notion, Google Workspace, Microsoft 365, LinkedIn, Composio, Pushover
- **MCP:** Model Context Protocol-verktygs-wrapper + uppskjutna verktygsuppsättningar
- **Schemaläggning:** cron add/remove/update/run, schemaverktyg
- **Minne:** recall, store, forget, knowledge, project intel
- **Avancerat:** delegate (agent-till-agent), swarm, modellväxling/routing, säkerhetsoperationer, molnoperationer
- **Hårdvara:** board info, memory map, memory read (funktionsgated)
### Körmiljö + säkerhet
- **Autonominivåer:** ReadOnly, Supervised (standard), Full.
- **Sandboxning:** arbetsyteisolering, sökvägstraversblockering, kommandotillåtlistor, förbjudna sökvägar, Landlock (Linux), Bubblewrap.
- **Hastighetsbegränsning:** max åtgärder per timme, max kostnad per dag (konfigurerbart).
- **Godkännandeportar:** interaktivt godkännande för medel-/högriskoperationer.
- **E-stopp:** nödavstängningskapacitet.
- **129+ säkerhetstester** i automatiserad CI.
### Drift + paketering
- Webbpanel serverad direkt från Gateway.
- Tunnelstöd: Cloudflare, Tailscale, ngrok, OpenVPN, anpassat kommando.
- Docker-körmiljöadapter för containeriserad exekvering.
- CI/CD: beta (automatiskt vid push) → stable (manuell dispatch) → Docker, crates.io, Scoop, AUR, Homebrew, tweet.
- Förbyggda binärer för Linux (x86_64, aarch64, armv7), macOS (x86_64, aarch64), Windows (x86_64).
```bash
docker run -d \
--name zeroclaw \
-e ANTHROPIC_API_KEY=your_key \
-v zeroclaw-data:/app/data \
zeroclaw/zeroclaw:latest
```
---
## Konfiguration
Minimal `~/.zeroclaw/config.toml`:
ZeroClaw använder en YAML-konfigurationsfil. Som standard letar den efter `config.yaml`.
```toml
default_provider = "anthropic"
api_key = "sk-ant-..."
```yaml
# Standardleverantör
provider: anthropic
# Leverantörskonfiguration
providers:
anthropic:
api_key: ${ANTHROPIC_API_KEY}
model: claude-3-5-sonnet-20241022
openai:
api_key: ${OPENAI_API_KEY}
model: gpt-4o
# Minneskonfiguration
memory:
backend: sqlite
path: data/memory.db
# Kanalkonfiguration
channels:
telegram:
token: ${TELEGRAM_BOT_TOKEN}
```
Fullständig konfigurationsreferens: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md).
### Kanalkonfiguration
**Telegram:**
```toml
[channels.telegram]
bot_token = "123456:ABC-DEF..."
```
**Discord:**
```toml
[channels.discord]
token = "your-bot-token"
```
**Slack:**
```toml
[channels.slack]
bot_token = "xoxb-..."
app_token = "xapp-..."
```
**WhatsApp:**
```toml
[channels.whatsapp]
enabled = true
```
**Matrix:**
```toml
[channels.matrix]
homeserver_url = "https://matrix.org"
username = "@bot:matrix.org"
password = "..."
```
**Signal:**
```toml
[channels.signal]
phone_number = "+1234567890"
```
### Tunnelkonfiguration
```toml
[tunnel]
kind = "cloudflare" # eller "tailscale", "ngrok", "openvpn", "custom", "none"
```
Detaljer: [Kanalreferens](docs/reference/api/channels-reference.md) · [Konfigurationsreferens](docs/reference/api/config-reference.md)
### Körmiljöstöd (nuvarande)
- **`native`** (standard) — direkt processexekvering, snabbaste vägen, idealisk för betrodda miljöer.
- **`docker`** — full containerisolering, tvingade säkerhetspolicyer, kräver Docker.
Ställ in `runtime.kind = "docker"` för strikt sandboxning eller nätverksisolering.
## Prenumerationsautentisering (OpenAI Codex / Claude Code / Gemini)
ZeroClaw stöder prenumerationsnativa autentiseringsprofiler (multikonto, krypterat i vila).
- Lagringsfil: `~/.zeroclaw/auth-profiles.json`
- Krypteringsnyckel: `~/.zeroclaw/.secret_key`
- Profil-ID-format: `<provider>:<profile_name>` (exempel: `openai-codex:work`)
```bash
# OpenAI Codex OAuth (ChatGPT-prenumeration)
zeroclaw auth login --provider openai-codex --device-code
# Gemini OAuth
zeroclaw auth login --provider gemini --profile default
# Anthropic setup-token
zeroclaw auth paste-token --provider anthropic --profile default --auth-kind authorization
# Kontrollera / uppdatera / byt profil
zeroclaw auth status
zeroclaw auth refresh --provider openai-codex --profile default
zeroclaw auth use --provider openai-codex --profile work
# Kör agenten med prenumerationsautentisering
zeroclaw agent --provider openai-codex -m "hello"
zeroclaw agent --provider anthropic -m "hello"
```
## Agentarbetsyta + färdigheter
Arbetsyterot: `~/.zeroclaw/workspace/` (konfigurerbart via config).
Injicerade promptfiler:
- `IDENTITY.md` — agentpersonlighet och roll
- `USER.md` — användarkontext och preferenser
- `MEMORY.md` — långtidsfakta och lärdomar
- `AGENTS.md` — sessionskonventioner och initieringsregler
- `SOUL.md` — kärnidentitet och operationsprinciper
Färdigheter: `~/.zeroclaw/workspace/skills/<skill>/SKILL.md` eller `SKILL.toml`.
```bash
# Lista installerade färdigheter
zeroclaw skills list
# Installera från git
zeroclaw skills install https://github.com/user/my-skill.git
# Säkerhetsgranskning före installation
zeroclaw skills audit https://github.com/user/my-skill.git
# Ta bort en färdighet
zeroclaw skills remove my-skill
```
## CLI-kommandon
```bash
# Arbetsytehantering
zeroclaw onboard # Guidad installationsguide
zeroclaw status # Visa daemon-/agentstatus
zeroclaw doctor # Kör systemdiagnostik
# Gateway + daemon
zeroclaw gateway # Starta gateway-server (127.0.0.1:42617)
zeroclaw daemon # Starta full autonom körmiljö
# Agent
zeroclaw agent # Interaktivt chattläge
zeroclaw agent -m "message" # Enstaka meddelandeläge
# Tjänstehantering
zeroclaw service install # Installera som OS-tjänst (launchd/systemd)
zeroclaw service start|stop|restart|status
# Kanaler
zeroclaw channel list # Lista konfigurerade kanaler
zeroclaw channel doctor # Kontrollera kanalhälsa
zeroclaw channel bind-telegram 123456789
# Cron + schemaläggning
zeroclaw cron list # Lista schemalagda jobb
zeroclaw cron add "*/5 * * * *" --prompt "Check system health"
zeroclaw cron remove <id>
# Minne
zeroclaw memory list # Lista minnesposter
zeroclaw memory get <key> # Hämta ett minne
zeroclaw memory stats # Minnesstatistik
# Autentiseringsprofiler
zeroclaw auth login --provider <name>
zeroclaw auth status
zeroclaw auth use --provider <name> --profile <profile>
# Hårdvaruperiferienheter
zeroclaw hardware discover # Sök efter anslutna enheter
zeroclaw peripheral list # Lista anslutna periferienheter
zeroclaw peripheral flash # Flasha firmware till enhet
# Migrering
zeroclaw migrate openclaw --dry-run
zeroclaw migrate openclaw
# Shell-kompletteringar
source <(zeroclaw completions bash)
zeroclaw completions zsh > ~/.zfunc/_zeroclaw
```
Fullständig kommandoreferens: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
<!-- markdownlint-disable MD001 MD024 -->
## Förutsättningar
<details>
<summary><strong>Windows</strong></summary>
#### Obligatoriskt
1. **Visual Studio Build Tools** (tillhandahåller MSVC-länkaren och Windows SDK):
```powershell
winget install Microsoft.VisualStudio.2022.BuildTools
```
Under installationen (eller via Visual Studio Installer), välj arbetsbelastningen **"Desktop development with C++"**.
2. **Rust toolchain:**
```powershell
winget install Rustlang.Rustup
```
Efter installationen, öppna en ny terminal och kör `rustup default stable` för att säkerställa att stable-toolchainen är aktiv.
3. **Verifiera** att båda fungerar:
```powershell
rustc --version
cargo --version
```
#### Valfritt
- **Docker Desktop** — krävs bara om du använder [Docker sandboxad körmiljö](#körmiljöstöd-nuvarande) (`runtime.kind = "docker"`). Installera via `winget install Docker.DockerDesktop`.
</details>
<details>
<summary><strong>Linux / macOS</strong></summary>
#### Obligatoriskt
1. **Byggverktyg:**
- **Linux (Debian/Ubuntu):** `sudo apt install build-essential pkg-config`
- **Linux (Fedora/RHEL):** `sudo dnf group install development-tools && sudo dnf install pkg-config`
- **macOS:** Installera Xcode Command Line Tools: `xcode-select --install`
2. **Rust toolchain:**
```bash
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
```
Se [rustup.rs](https://rustup.rs) för detaljer.
3. **Verifiera** att båda fungerar:
```bash
rustc --version
cargo --version
```
#### Enradsinstallerare
Eller hoppa över stegen ovan och installera allt (systemberoenden, Rust, ZeroClaw) med ett enda kommando:
```bash
curl -LsSf https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/install.sh | bash
```
#### Kompileringsresurskrav
Att bygga från källkod kräver mer resurser än att köra den resulterande binären:
| Resurs | Minimum | Rekommenderat |
| -------------- | ------- | ------------- |
| **RAM + swap** | 2 GB | 4 GB+ |
| **Ledigt disk**| 6 GB | 10 GB+ |
Om din värd ligger under minimum, använd förbyggda binärer:
```bash
./install.sh --prefer-prebuilt
```
För att kräva enbart binärinstallation utan källkods-fallback:
```bash
./install.sh --prebuilt-only
```
#### Valfritt
- **Docker** — krävs bara om du använder [Docker sandboxad körmiljö](#körmiljöstöd-nuvarande) (`runtime.kind = "docker"`). Installera via din pakethanterare eller [docker.com](https://docs.docker.com/engine/install/).
> **Notering:** Standard `cargo build --release` använder `codegen-units=1` för att minska toppkompileringstrycket. För snabbare byggen på kraftfulla maskiner, använd `cargo build --profile release-fast`.
</details>
<!-- markdownlint-enable MD001 MD024 -->
### Förbyggda binärer
Release-tillgångar publiceras för:
- Linux: `x86_64`, `aarch64`, `armv7`
- macOS: `x86_64`, `aarch64`
- Windows: `x86_64`
Ladda ner de senaste tillgångarna från:
<https://github.com/zeroclaw-labs/zeroclaw/releases/latest>
---
## Dokumentation
Använd dessa när du är förbi onboarding-flödet och vill ha den djupare referensen.
För detaljerad dokumentation, se:
- Börja med [dokumentationsindexet](docs/README.md) för navigering och "vad finns var."
- Läs [arkitekturöversikten](docs/architecture.md) för den fullständiga systemmodellen.
- Använd [konfigurationsreferensen](docs/reference/api/config-reference.md) när du behöver varje nyckel och exempel.
- Kör Gateway enligt boken med [operationsrunbook](docs/ops/operations-runbook.md).
- Följ [ZeroClaw Onboard](#snabbstart) för en guidad installation.
- Felsök vanliga problem med [felsökningsguiden](docs/ops/troubleshooting.md).
- Granska [säkerhetsvägledning](docs/security/README.md) innan du exponerar något.
- [Dokumentationshubb](docs/README.md)
- [Kommandoreferens](docs/commands-reference.md)
- [Leverantörsreferens](docs/providers-reference.md)
- [Kanalreferens](docs/channels-reference.md)
- [Konfigurationsreferens](docs/config-reference.md)
### Referensdokumentation
---
- Dokumentationshubb: [docs/README.md](docs/README.md)
- Enhetlig dokumentations-TOC: [docs/SUMMARY.md](docs/SUMMARY.md)
- Kommandoreferens: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
- Konfigurationsreferens: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md)
- Leverantörsreferens: [docs/reference/api/providers-reference.md](docs/reference/api/providers-reference.md)
- Kanalreferens: [docs/reference/api/channels-reference.md](docs/reference/api/channels-reference.md)
- Operationsrunbook: [docs/ops/operations-runbook.md](docs/ops/operations-runbook.md)
- Felsökning: [docs/ops/troubleshooting.md](docs/ops/troubleshooting.md)
## Bidrag
### Samarbetsdokumentation
- Bidragsguide: [CONTRIBUTING.md](CONTRIBUTING.md)
- PR-arbetsflödespolicy: [docs/contributing/pr-workflow.md](docs/contributing/pr-workflow.md)
- CI-arbetsflödesguide: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- Granskningsplaybook: [docs/contributing/reviewer-playbook.md](docs/contributing/reviewer-playbook.md)
- Säkerhetsutlämnandepolicy: [SECURITY.md](SECURITY.md)
- Dokumentationsmall: [docs/contributing/doc-template.md](docs/contributing/doc-template.md)
### Distribution + drift
- Nätverksdistributionsguide: [docs/ops/network-deployment.md](docs/ops/network-deployment.md)
- Proxy-agentplaybook: [docs/ops/proxy-agent-playbook.md](docs/ops/proxy-agent-playbook.md)
- Hårdvaruguider: [docs/hardware/README.md](docs/hardware/README.md)
## Smooth Crab 🦀
ZeroClaw byggdes för smooth crab 🦀, en snabb och effektiv AI-assistent. Byggd av Argenis De La Rosa och gemenskapen.
- [zeroclawlabs.ai](https://zeroclawlabs.ai)
- [@zeroclawlabs](https://x.com/zeroclawlabs)
## Stöd ZeroClaw
Om ZeroClaw hjälper ditt arbete och du vill stödja pågående utveckling kan du donera här:
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=for-the-badge&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
### 🙏 Särskilt tack
Ett hjärtligt tack till de gemenskaper och institutioner som inspirerar och driver detta open source-arbete:
- **Harvard University** — för att främja intellektuell nyfikenhet och tänja gränserna för vad som är möjligt.
- **MIT** — för att försvara öppen kunskap, öppen källkod och tron att teknologi bör vara tillgänglig för alla.
- **Sundai Club** — för gemenskapen, energin och den outtröttliga driften att bygga saker som spelar roll.
- **Världen & bortom** 🌍✨ — till varje bidragsgivare, drömmare och byggare där ute som gör öppen källkod till en kraft för gott. Det här är för er.
Vi bygger öppet eftersom de bästa idéerna kommer från överallt. Om du läser detta är du en del av det. Välkommen. 🦀❤️
## Bidra
Ny till ZeroClaw? Leta efter ärenden märkta [`good first issue`](https://github.com/zeroclaw-labs/zeroclaw/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) — se vår [Bidragsguide](CONTRIBUTING.md#first-time-contributors) för hur du kommer igång. AI/vibe-kodade PR:er är välkomna! 🤖
Se [CONTRIBUTING.md](CONTRIBUTING.md) och [CLA.md](docs/contributing/cla.md). Implementera en trait, skicka in en PR:
- CI-arbetsflödesguide: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- Ny `Provider``src/providers/`
- Ny `Channel``src/channels/`
- Ny `Observer``src/observability/`
- Nytt `Tool``src/tools/`
- Nytt `Memory``src/memory/`
- Ny `Tunnel``src/tunnel/`
- Ny `Peripheral``src/peripherals/`
- Ny `Skill``~/.zeroclaw/workspace/skills/<name>/`
<!-- BEGIN:RECENT_CONTRIBUTORS -->
<!-- END:RECENT_CONTRIBUTORS -->
## ⚠️ Officiellt repository & varning för imitation
**Detta är det enda officiella ZeroClaw-repositoryt:**
> https://github.com/zeroclaw-labs/zeroclaw
Alla andra repositorier, organisationer, domäner eller paket som hävdar att vara "ZeroClaw" eller antyder anslutning till ZeroClaw Labs är **obehöriga och inte affilierade med detta projekt**. Kända obehöriga forkar listas i [TRADEMARK.md](docs/maintainers/trademark.md).
Om du stöter på imitation eller varumärkesmissbruk, vänligen [öppna ett ärende](https://github.com/zeroclaw-labs/zeroclaw/issues).
Bidrag är välkomna! Vänligen läs [Bidragsguiden](CONTRIBUTING.md).
---
## Licens
ZeroClaw är dubbellicensierat för maximal öppenhet och bidragsgivarskydd:
Detta projekt är dubbellicensierat:
| Licens | Användningsfall |
|--------|-----------------|
| [MIT](LICENSE-MIT) | Öppen källkod, forskning, akademiskt, personligt bruk |
| [Apache 2.0](LICENSE-APACHE) | Patentskydd, institutionell, kommersiell distribution |
- MIT License
- Apache License, version 2.0
Du kan välja endera licens. **Bidragsgivare beviljar automatiskt rättigheter under båda** — se [CLA.md](docs/contributing/cla.md) för det fullständiga bidragsgivaravtalet.
### Varumärke
**ZeroClaw**-namnet och logotypen är varumärken som tillhör ZeroClaw Labs. Denna licens beviljar inte tillstånd att använda dem för att antyda stöd eller anslutning. Se [TRADEMARK.md](docs/maintainers/trademark.md) för tillåtna och förbjudna användningar.
### Bidragsgivarskydd
- Du **behåller upphovsrätten** till dina bidrag
- **Patentbeviljande** (Apache 2.0) skyddar dig från patentkrav från andra bidragsgivare
- Dina bidrag är **permanent tillskrivna** i commit-historik och [NOTICE](NOTICE)
- Inga varumärkesrättigheter överförs genom att bidra
Se [LICENSE-APACHE](LICENSE-APACHE) och [LICENSE-MIT](LICENSE-MIT) för detaljer.
---
**ZeroClaw** — Noll overhead. Noll kompromiss. Distribuera var som helst. Byt ut vad som helst. 🦀
## Community
## Bidragsgivare
- [Telegram](https://t.me/zeroclawlabs)
- [Facebook Group](https://www.facebook.com/groups/zeroclaw)
- [WeChat Group](https://zeroclawlabs.cn/group.jpg)
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors">
<img src="https://contrib.rocks/image?repo=zeroclaw-labs/zeroclaw" alt="ZeroClaw-bidragsgivare" />
</a>
---
Denna lista genereras från GitHub-bidragsgivargrafen och uppdateras automatiskt.
## Sponsorer
## Stjärnhistorik
Om ZeroClaw är användbart för dig, vänligen överväg att köpa en kaffe till oss:
<p align="center">
<a href="https://www.star-history.com/#zeroclaw-labs/zeroclaw&type=date&legend=top-left">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&theme=dark&legend=top-left" />
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
</picture>
</a>
</p>
[![Buy Me a Coffee](https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee)](https://buymeacoffee.com/argenistherose)
<!-- BEGIN:RECENT_CONTRIBUTORS -->
### 🌟 Recent Contributors (v0.3.1)
3 contributors shipped features, fixes, and improvements in this release cycle:
- **Argenis**
- **argenis de la rosa**
- **Claude Opus 4.6**
Thank you to everyone who opened issues, reviewed PRs, translated docs, and helped test. Every contribution matters. 🦀
<!-- END:RECENT_CONTRIBUTORS -->

View File

@ -1,29 +1,23 @@
<p align="center">
<img src="https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/docs/assets/zeroclaw-banner.png" alt="ZeroClaw" width="600" />
<img src="zeroclaw.png" alt="ZeroClaw" width="200" />
</p>
<h1 align="center">🦀 ZeroClaw — ผู้ช่วย AI ส่วนตัว</h1>
<h1 align="center">ZeroClaw 🦀</h1>
<p align="center">
<strong>ไม่มีโอเวอร์เฮด ไม่มีการประนีประนอม 100% Rust 100% ไม่ผูกมัด</strong><br>
⚡️ <strong>ทำงานบนฮาร์ดแวร์ $10 ด้วย RAM <5MB: นั่นคือหน่วยความจำน้อยกว่า OpenClaw 99% และราคาถูกกว่า Mac mini 98%!</strong>
<strong>โอเวอร์เฮดเป็นศูนย์ ไม่มีการประนีประนอม 100% Rust 100% Agnostic</strong><br>
⚡️ <strong>ทำงานบนฮาร์ดแวร์ $10 ด้วย RAM <5MB: ใช้หน่วยความจำน้อยกว่า OpenClaw 99% และถูกกว่า Mac mini 98%!</strong>
</p>
<p align="center">
<a href="LICENSE-APACHE"><img src="https://img.shields.io/badge/license-MIT%20OR%20Apache%202.0-blue.svg" alt="License: MIT OR Apache-2.0" /></a>
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors"><img src="https://img.shields.io/github/contributors/zeroclaw-labs/zeroclaw?color=green" alt="Contributors" /></a>
<a href="NOTICE"><img src="https://img.shields.io/badge/contributors-27+-green.svg" alt="Contributors" /></a>
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
<a href="https://x.com/zeroclawlabs?s=21"><img src="https://img.shields.io/badge/X-%40zeroclawlabs-000000?style=flat&logo=x&logoColor=white" alt="X: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclawlabs"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
<a href="https://discord.com/invite/wDshRVqRjx"><img src="https://img.shields.io/badge/Discord-Join-5865F2?style=flat&logo=discord&logoColor=white" alt="Discord" /></a>
<a href="https://www.instagram.com/therealzeroclaw"><img src="https://img.shields.io/badge/Instagram-%40therealzeroclaw-E4405F?style=flat&logo=instagram&logoColor=white" alt="Instagram: @therealzeroclaw" /></a>
<a href="https://www.tiktok.com/@zeroclawlabs"><img src="https://img.shields.io/badge/TikTok-%40zeroclawlabs-000000?style=flat&logo=tiktok&logoColor=white" alt="TikTok: @zeroclawlabs" /></a>
<a href="https://www.rednote.com/user/profile/69b735e6000000002603927e"><img src="https://img.shields.io/badge/RedNote-Official-FF2442?style=flat" alt="RedNote" /></a>
<a href="https://www.reddit.com/r/zeroclawlabs/"><img src="https://img.shields.io/badge/Reddit-r%2Fzeroclawlabs-FF4500?style=flat&logo=reddit&logoColor=white" alt="Reddit: r/zeroclawlabs" /></a>
</p>
<p align="center">
สร้างโดยนักศึกษาและสมาชิกจากชุมชน Harvard, MIT, และ Sundai.Club
<a href="https://zeroclawlabs.cn/group.jpg"><img src="https://img.shields.io/badge/WeChat-Group-B7D7A8?logo=wechat&logoColor=white" alt="WeChat Group" /></a>
<a href="https://www.xiaohongshu.com/user/profile/67cbfc43000000000d008307?xsec_token=AB73VnYnGNx5y36EtnnZfGmAmS-6Wzv8WMuGpfwfkg6Yc%3D&xsec_source=pc_search"><img src="https://img.shields.io/badge/Xiaohongshu-Official-FF2442?style=flat" alt="Xiaohongshu: Official" /></a>
<a href="https://t.me/zeroclawlabs"><img src="https://img.shields.io/badge/Telegram-%40zeroclawlabs-26A5E4?style=flat&logo=telegram&logoColor=white" alt="Telegram: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclaw"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
</p>
<p align="center">
@ -61,695 +55,149 @@
<a href="README.nb.md">🇳🇴 Norsk</a>
</p>
ZeroClaw คือผู้ช่วย AI ส่วนตัวที่คุณรันบนอุปกรณ์ของคุณเอง มันตอบคุณผ่านช่องทางที่คุณใช้อยู่แล้ว (WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work และอื่นๆ) มีแดชบอร์ดเว็บสำหรับการควบคุมแบบเรียลไทม์และสามารถเชื่อมต่อกับอุปกรณ์ต่อพ่วง (ESP32, STM32, Arduino, Raspberry Pi) Gateway เป็นเพียง control plane — ผลิตภัณฑ์คือผู้ช่วย
หากคุณต้องการผู้ช่วยส่วนตัว ผู้ใช้คนเดียว ที่รู้สึกเหมือนอยู่ในเครื่อง เร็ว และพร้อมใช้งานตลอดเวลา นี่คือมัน
<p align="center">
<a href="https://zeroclawlabs.ai">เว็บไซต์</a> ·
<a href="docs/README.md">เอกสาร</a> ·
<a href="docs/architecture.md">สถาปัตยกรรม</a> ·
<a href="#เริ่มต้นอย่างรวดเร็ว">เริ่มต้นใช้งาน</a> ·
<a href="#การย้ายจาก-openclaw">ย้ายจาก OpenClaw</a> ·
<a href="docs/ops/troubleshooting.md">แก้ไขปัญหา</a> ·
<a href="https://discord.com/invite/wDshRVqRjx">Discord</a>
</p>
> **การตั้งค่าที่แนะนำ:** รัน `zeroclaw onboard` ในเทอร์มินัลของคุณ ZeroClaw Onboard จะแนะนำคุณทีละขั้นตอนในการตั้งค่า gateway, workspace, ช่องทาง และ provider เป็นเส้นทางการตั้งค่าที่แนะนำและใช้งานได้บน macOS, Linux และ Windows (ผ่าน WSL2) ติดตั้งใหม่? เริ่มที่นี่: [เริ่มต้นใช้งาน](#เริ่มต้นอย่างรวดเร็ว)
### การยืนยันตัวตนแบบสมัครสมาชิก (OAuth)
- **OpenAI Codex** (สมัครสมาชิก ChatGPT)
- **Gemini** (Google OAuth)
- **Anthropic** (API key หรือ auth token)
หมายเหตุเกี่ยวกับโมเดล: แม้จะรองรับ provider/โมเดลหลายตัว แต่เพื่อประสบการณ์ที่ดีที่สุด ให้ใช้โมเดลรุ่นล่าสุดที่แข็งแกร่งที่สุดที่คุณมี ดู [Onboarding](#เริ่มต้นอย่างรวดเร็ว)
การตั้งค่าโมเดล + CLI: [อ้างอิง Provider](docs/reference/api/providers-reference.md)
การหมุนเวียนโปรไฟล์การยืนยันตัวตน (OAuth vs API keys) + failover: [Model failover](docs/reference/api/providers-reference.md)
## ติดตั้ง (แนะนำ)
Runtime: Rust stable toolchain ไบนารีเดียว ไม่มี runtime dependencies
### Homebrew (macOS/Linuxbrew)
```bash
brew install zeroclaw
```
### Bootstrap คลิกเดียว
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./install.sh
```
`zeroclaw onboard` จะรันโดยอัตโนมัติหลังติดตั้งเพื่อกำหนดค่า workspace และ provider ของคุณ
## เริ่มต้นอย่างรวดเร็ว (TL;DR)
คู่มือสำหรับผู้เริ่มต้นฉบับสมบูรณ์ (การยืนยันตัวตน, pairing, ช่องทาง): [เริ่มต้นใช้งาน](docs/setup-guides/one-click-bootstrap.md)
```bash
# ติดตั้ง + onboard
./install.sh --api-key "sk-..." --provider openrouter
# เริ่ม gateway (เซิร์ฟเวอร์ webhook + แดชบอร์ดเว็บ)
zeroclaw gateway # ค่าเริ่มต้น: 127.0.0.1:42617
zeroclaw gateway --port 0 # พอร์ตสุ่ม (ความปลอดภัยเพิ่มขึ้น)
# พูดคุยกับผู้ช่วย
zeroclaw agent -m "Hello, ZeroClaw!"
# โหมดโต้ตอบ
zeroclaw agent
# เริ่ม runtime อัตโนมัติเต็มรูปแบบ (gateway + ช่องทาง + cron + hands)
zeroclaw daemon
# ตรวจสอบสถานะ
zeroclaw status
# รันการวินิจฉัย
zeroclaw doctor
```
กำลังอัปเกรด? รัน `zeroclaw doctor` หลังจากอัปเดต
### จากซอร์ส (สำหรับนักพัฒนา)
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
cargo build --release --locked
cargo install --path . --force --locked
zeroclaw onboard
```
> **ทางเลือกสำหรับนักพัฒนา (ไม่ต้องติดตั้งแบบ global):** นำหน้าคำสั่งด้วย `cargo run --release --` (ตัวอย่าง: `cargo run --release -- status`)
## การย้ายจาก OpenClaw
ZeroClaw สามารถนำเข้า workspace, หน่วยความจำ และการกำหนดค่าจาก OpenClaw ของคุณ:
```bash
# ดูตัวอย่างสิ่งที่จะถูกย้าย (ปลอดภัย, อ่านอย่างเดียว)
zeroclaw migrate openclaw --dry-run
# รันการย้าย
zeroclaw migrate openclaw
```
สิ่งนี้จะย้ายรายการหน่วยความจำ ไฟล์ workspace และการกำหนดค่าจาก `~/.openclaw/` ไปยัง `~/.zeroclaw/` การกำหนดค่าจะถูกแปลงจาก JSON เป็น TOML โดยอัตโนมัติ
## ค่าเริ่มต้นด้านความปลอดภัย (การเข้าถึง DM)
ZeroClaw เชื่อมต่อกับพื้นผิวการส่งข้อความจริง ถือว่า DM ขาเข้าเป็นข้อมูลที่ไม่น่าเชื่อถือ
คู่มือความปลอดภัยฉบับเต็ม: [SECURITY.md](SECURITY.md)
พฤติกรรมเริ่มต้นบนทุกช่องทาง:
- **DM pairing** (ค่าเริ่มต้น): ผู้ส่งที่ไม่รู้จักจะได้รับรหัส pairing สั้นๆ และบอทจะไม่ประมวลผลข้อความของพวกเขา
- อนุมัติด้วย: `zeroclaw pairing approve <channel> <code>` (จากนั้นผู้ส่งจะถูกเพิ่มในรายการอนุญาตในเครื่อง)
- DM ขาเข้าสาธารณะต้องมีการเลือกเข้าร่วมอย่างชัดเจนใน `config.toml`
- รัน `zeroclaw doctor` เพื่อค้นหานโยบาย DM ที่เสี่ยงหรือกำหนดค่าผิด
**ระดับความเป็นอัตโนมัติ:**
| ระดับ | พฤติกรรม |
|-------|----------|
| `ReadOnly` | เอเจนต์สามารถสังเกตแต่ไม่สามารถดำเนินการ |
| `Supervised` (ค่าเริ่มต้น) | เอเจนต์ดำเนินการโดยมีการอนุมัติสำหรับการดำเนินการที่มีความเสี่ยงปานกลาง/สูง |
| `Full` | เอเจนต์ดำเนินการอย่างอัตโนมัติภายในขอบเขตนโยบาย |
**ชั้นของ sandboxing:** การแยก workspace, การบล็อก path traversal, รายการอนุญาตคำสั่ง, เส้นทางที่ห้าม (`/etc`, `/root`, `~/.ssh`), การจำกัดอัตรา (การดำเนินการสูงสุด/ชั่วโมง, ขีดจำกัดค่าใช้จ่าย/วัน)
---
<!-- BEGIN:WHATS_NEW -->
### 🚀 What's New in v0.3.1 (March 2026)
| Area | Highlights |
|---|---|
| ci | add Termux (aarch64-linux-android) release target |
<!-- END:WHATS_NEW -->
### 📢 ประกาศ
## ZeroClaw คืออะไร?
ใช้บอร์ดนี้สำหรับประกาศสำคัญ (การเปลี่ยนแปลงที่ทำลาย, คำแนะนำด้านความปลอดภัย, ช่วงเวลาบำรุงรักษา และตัวบล็อกการปล่อย)
ZeroClaw เป็นโครงสร้างพื้นฐานผู้ช่วย AI ที่มีน้ำหนักเบา ปรับเปลี่ยนได้ และขยายได้ สร้างด้วย Rust มันเชื่อมต่อผู้ให้บริการ LLM ต่างๆ (Anthropic, OpenAI, Google, Ollama ฯลฯ) ผ่านอินเทอร์เฟซแบบรวมและรองรับหลายช่องทาง (Telegram, Matrix, CLI ฯลฯ)
| วันที่ (UTC) | ระดับ | ประกาศ | การดำเนินการ |
| ---------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 2026-02-19 | _วิกฤต_ | เรา**ไม่มีส่วนเกี่ยวข้อง**กับ `openagen/zeroclaw`, `zeroclaw.org` หรือ `zeroclaw.net` โดเมน `zeroclaw.org` และ `zeroclaw.net` ปัจจุบันชี้ไปที่ fork `openagen/zeroclaw` และโดเมน/repository เหล่านั้นกำลังปลอมตัวเป็นเว็บไซต์/โปรเจกต์อย่างเป็นทางการของเรา | อย่าเชื่อถือข้อมูล ไบนารี การระดมทุน หรือประกาศจากแหล่งเหล่านั้น ใช้เฉพาะ[repository นี้](https://github.com/zeroclaw-labs/zeroclaw)และบัญชีโซเชียลที่ได้รับการยืนยันของเรา |
| 2026-02-21 | _สำคัญ_ | เว็บไซต์อย่างเป็นทางการของเราพร้อมใช้งานแล้ว: [zeroclawlabs.ai](https://zeroclawlabs.ai) ขอบคุณสำหรับความอดทนขณะที่เราเตรียมการเปิดตัว เรายังคงเห็นความพยายามในการแอบอ้าง ดังนั้น**อย่า**เข้าร่วมกิจกรรมการลงทุนหรือระดมทุนที่อ้างชื่อ ZeroClaw เว้นแต่จะเผยแพร่ผ่านช่องทางอย่างเป็นทางการของเรา | ใช้[repository นี้](https://github.com/zeroclaw-labs/zeroclaw)เป็นแหล่งข้อมูลที่เชื่อถือได้เพียงแหล่งเดียว ติดตาม [X (@zeroclawlabs)](https://x.com/zeroclawlabs?s=21), [Facebook (Group)](https://www.facebook.com/groups/zeroclawlabs) และ [Reddit (r/zeroclawlabs)](https://www.reddit.com/r/zeroclawlabs/) สำหรับอัปเดตอย่างเป็นทางการ |
| 2026-02-19 | _สำคัญ_ | Anthropic อัปเดตข้อกำหนดการยืนยันตัวตนและการใช้ข้อมูลรับรองเมื่อ 2026-02-19 โทเค็น OAuth ของ Claude Code (Free, Pro, Max) มีไว้สำหรับ Claude Code และ Claude.ai โดยเฉพาะ การใช้โทเค็น OAuth จาก Claude Free/Pro/Max ในผลิตภัณฑ์ เครื่องมือ หรือบริการอื่น (รวมถึง Agent SDK) ไม่ได้รับอนุญาตและอาจละเมิดข้อกำหนดบริการสำหรับผู้บริโภค | โปรดหลีกเลี่ยงการรวม OAuth ของ Claude Code ชั่วคราวเพื่อป้องกันการสูญเสียที่อาจเกิดขึ้น ข้อความต้นฉบับ: [Authentication and Credential Use](https://code.claude.com/docs/en/legal-and-compliance#authentication-and-credential-use) |
### คุณสมบัติหลัก
## จุดเด่น
- **🦀 เขียนด้วย Rust**: ประสิทธิภาพสูง ความปลอดภัยของหน่วยความจำ และ abstraction แบบไม่มีค่าใช้จ่าย
- **🔌 Agnostic ต่อผู้ให้บริการ**: รองรับ OpenAI, Anthropic, Google Gemini, Ollama และอื่นๆ
- **📱 หลายช่องทาง**: Telegram, Matrix (พร้อม E2EE), CLI และอื่นๆ
- **🧠 หน่วยความจำแบบเสียบได้**: Backend แบบ SQLite และ Markdown
- **🛠️ เครื่องมือที่ขยายได้**: เพิ่มเครื่องมือที่กำหนดเองได้ง่าย
- **🔒 ความปลอดภัยเป็นอันดับหนึ่ง**: Reverse proxy, การออกแบบที่ให้ความสำคัญกับความเป็นส่วนตัว
- **Runtime ที่เบาเป็นค่าเริ่มต้น** — เวิร์กโฟลว์ CLI และสถานะทั่วไปทำงานในซองหน่วยความจำไม่กี่เมกะไบต์บน release builds
- **Deployment ที่คุ้มค่า** — ออกแบบสำหรับบอร์ด $10 และอินสแตนซ์คลาวด์ขนาดเล็ก ไม่มี runtime dependencies ที่หนัก
- **Cold Start ที่รวดเร็ว** — runtime Rust ไบนารีเดียวทำให้การเริ่มต้นคำสั่งและ daemon เกือบจะทันที
- **สถาปัตยกรรมที่พกพาได้** — ไบนารีเดียวข้าม ARM, x86 และ RISC-V พร้อม provider/ช่องทาง/เครื่องมือที่สลับได้
- **Gateway แบบ Local-first** — control plane เดียวสำหรับ sessions, ช่องทาง, เครื่องมือ, cron, SOPs และเหตุการณ์
- **กล่องข้อความหลายช่องทาง** — WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WebSocket และอื่นๆ
- **การจัดการหลายเอเจนต์ (Hands)** — ฝูงเอเจนต์อัตโนมัติที่ทำงานตามกำหนดเวลาและฉลาดขึ้นตามเวลา
- **Standard Operating Procedures (SOPs)** — การทำงานอัตโนมัติของเวิร์กโฟลว์ที่ขับเคลื่อนด้วยเหตุการณ์ด้วย MQTT, webhook, cron และทริกเกอร์อุปกรณ์ต่อพ่วง
- **แดชบอร์ดเว็บ** — UI เว็บ React 19 + Vite พร้อมแชทเรียลไทม์, เบราว์เซอร์หน่วยความจำ, ตัวแก้ไขการกำหนดค่า, ตัวจัดการ cron และตัวตรวจสอบเครื่องมือ
- **อุปกรณ์ต่อพ่วง** — ESP32, STM32 Nucleo, Arduino, Raspberry Pi GPIO ผ่าน trait `Peripheral`
- **เครื่องมือชั้นหนึ่ง** — shell, file I/O, browser, git, web fetch/search, MCP, Jira, Notion, Google Workspace และ 70+ อื่นๆ
- **Hook วงจรชีวิต** — สกัดกั้นและแก้ไขการเรียก LLM, การทำงานของเครื่องมือ และข้อความในทุกขั้นตอน
- **แพลตฟอร์ม skill** — skill ที่รวมมา, ชุมชน และ workspace พร้อมการตรวจสอบความปลอดภัย
- **รองรับ tunnel** — Cloudflare, Tailscale, ngrok, OpenVPN และ tunnel แบบกำหนดเองสำหรับการเข้าถึงระยะไกล
---
### ทำไมทีมถึงเลือก ZeroClaw
## เริ่มต้นอย่างรวดเร็ว
- **เบาเป็นค่าเริ่มต้น:** ไบนารี Rust ขนาดเล็ก เริ่มต้นเร็ว footprint หน่วยความจำต่ำ
- **ปลอดภัยตามการออกแบบ:** pairing, sandboxing ที่เข้มงวด, รายการอนุญาตที่ชัดเจน, การกำหนดขอบเขต workspace
- **สลับได้ทั้งหมด:** ระบบหลักเป็น traits (providers, ช่องทาง, เครื่องมือ, หน่วยความจำ, tunnels)
- **ไม่มี lock-in:** รองรับ provider ที่เข้ากันได้กับ OpenAI + endpoint แบบกำหนดเองที่เสียบได้
### ข้อกำหนด
## สรุป Benchmark (ZeroClaw vs OpenClaw, ทำซ้ำได้)
- Rust 1.70+
- API key ของผู้ให้บริการ LLM (Anthropic, OpenAI ฯลฯ)
Benchmark เร็วบนเครื่องท้องถิ่น (macOS arm64, ก.พ. 2026) ปรับมาตรฐานสำหรับฮาร์ดแวร์ edge 0.8GHz
| | OpenClaw | NanoBot | PicoClaw | ZeroClaw 🦀 |
| ------------------------- | ------------- | -------------- | --------------- | -------------------- |
| **ภาษา** | TypeScript | Python | Go | **Rust** |
| **RAM** | > 1GB | > 100MB | < 10MB | **< 5MB** |
| **Startup (แกน 0.8GHz)** | > 500s | > 30s | < 1s | **< 10ms** |
| **ขนาดไบนารี** | ~28MB (dist) | N/A (Scripts) | ~8MB | **~8.8 MB** |
| **ค่าใช้จ่าย** | Mac Mini $599 | Linux SBC ~$50 | Linux Board $10 | **ฮาร์ดแวร์ใดก็ได้ $10** |
> หมายเหตุ: ผลลัพธ์ ZeroClaw วัดจาก release builds โดยใช้ `/usr/bin/time -l` OpenClaw ต้องการ runtime Node.js (โดยทั่วไป ~390MB overhead หน่วยความจำเพิ่มเติม) ในขณะที่ NanoBot ต้องการ runtime Python PicoClaw และ ZeroClaw เป็นไบนารีแบบ static ตัวเลข RAM ด้านบนเป็นหน่วยความจำ runtime ความต้องการการคอมไพล์ตอน build สูงกว่า
<p align="center">
<img src="docs/assets/zeroclaw-comparison.jpeg" alt="ZeroClaw vs OpenClaw Comparison" width="800" />
</p>
### การวัดในเครื่องที่ทำซ้ำได้
### การติดตั้ง
```bash
cargo build --release
ls -lh target/release/zeroclaw
# Clone repository
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
/usr/bin/time -l target/release/zeroclaw --help
/usr/bin/time -l target/release/zeroclaw status
# Build
cargo build --release
# Run
cargo run --release
```
## ทุกสิ่งที่เราสร้างมาจนถึงตอนนี้
### ด้วย Docker
### แพลตฟอร์มหลัก
- Control plane HTTP/WS/SSE ของ Gateway พร้อม sessions, presence, การกำหนดค่า, cron, webhooks, แดชบอร์ดเว็บ และ pairing
- พื้นผิว CLI: `gateway`, `agent`, `onboard`, `doctor`, `status`, `service`, `migrate`, `auth`, `cron`, `channel`, `skills`
- ลูปการจัดการเอเจนต์พร้อม tool dispatch, การสร้าง prompt, การจำแนกข้อความ และการโหลดหน่วยความจำ
- โมเดล session พร้อมการบังคับใช้นโยบายความปลอดภัย ระดับความเป็นอัตโนมัติ และ approval gating
- Wrapper provider ที่ยืดหยุ่นพร้อม failover, retry และ model routing ข้าม 20+ LLM backends
### ช่องทาง
ช่องทาง: WhatsApp (native), Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, DingTalk, Lark, Mattermost, Nextcloud Talk, Nostr, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WATI, Mochat, Linq, Notion, WebSocket, ClawdTalk
Feature-gated: Matrix (`channel-matrix`), Lark (`channel-lark`), Nostr (`channel-nostr`)
### แดชบอร์ดเว็บ
แดชบอร์ดเว็บ React 19 + Vite 6 + Tailwind CSS 4 ให้บริการโดยตรงจาก Gateway:
- **Dashboard** — ภาพรวมระบบ สถานะสุขภาพ uptime การติดตามค่าใช้จ่าย
- **Agent Chat** — แชทโต้ตอบกับเอเจนต์
- **Memory** — เรียกดูและจัดการรายการหน่วยความจำ
- **Config** — ดูและแก้ไขการกำหนดค่า
- **Cron** — จัดการงานที่กำหนดเวลา
- **Tools** — เรียกดูเครื่องมือที่มี
- **Logs** — ดูบันทึกกิจกรรมเอเจนต์
- **Cost** — การใช้โทเค็นและการติดตามค่าใช้จ่าย
- **Doctor** — การวินิจฉัยสุขภาพระบบ
- **Integrations** — สถานะการรวมและการตั้งค่า
- **Pairing** — การจัดการ pairing อุปกรณ์
### เป้าหมาย firmware
| เป้าหมาย | แพลตฟอร์ม | วัตถุประสงค์ |
|--------|----------|---------|
| ESP32 | Espressif ESP32 | เอเจนต์อุปกรณ์ต่อพ่วงไร้สาย |
| ESP32-UI | ESP32 + Display | เอเจนต์พร้อมอินเทอร์เฟซภาพ |
| STM32 Nucleo | STM32 (ARM Cortex-M) | อุปกรณ์ต่อพ่วงอุตสาหกรรม |
| Arduino | Arduino | บริดจ์เซ็นเซอร์/แอคชูเอเตอร์พื้นฐาน |
| Uno Q Bridge | Arduino Uno | บริดจ์ซีเรียลไปยังเอเจนต์ |
### เครื่องมือ + การทำงานอัตโนมัติ
- **หลัก:** shell, file read/write/edit, การดำเนินการ git, glob search, content search
- **เว็บ:** browser control, web fetch, web search, screenshot, image info, PDF read
- **การรวม:** Jira, Notion, Google Workspace, Microsoft 365, LinkedIn, Composio, Pushover
- **MCP:** Model Context Protocol tool wrapper + deferred tool sets
- **การกำหนดเวลา:** cron add/remove/update/run, schedule tool
- **หน่วยความจำ:** recall, store, forget, knowledge, project intel
- **ขั้นสูง:** delegate (เอเจนต์-ต่อ-เอเจนต์), swarm, model switch/routing, security ops, cloud ops
- **ฮาร์ดแวร์:** board info, memory map, memory read (feature-gated)
### Runtime + ความปลอดภัย
- **ระดับความเป็นอัตโนมัติ:** ReadOnly, Supervised (ค่าเริ่มต้น), Full
- **Sandboxing:** การแยก workspace, การบล็อก path traversal, รายการอนุญาตคำสั่ง, เส้นทางที่ห้าม, Landlock (Linux), Bubblewrap
- **การจำกัดอัตรา:** การดำเนินการสูงสุดต่อชั่วโมง ค่าใช้จ่ายสูงสุดต่อวัน (กำหนดค่าได้)
- **Approval gating:** การอนุมัติแบบโต้ตอบสำหรับการดำเนินการที่มีความเสี่ยงปานกลาง/สูง
- **E-stop:** ความสามารถในการปิดระบบฉุกเฉิน
- **129+ การทดสอบความปลอดภัย** ใน CI อัตโนมัติ
### Ops + การแพ็กเกจ
- แดชบอร์ดเว็บให้บริการโดยตรงจาก Gateway
- รองรับ tunnel: Cloudflare, Tailscale, ngrok, OpenVPN, คำสั่งกำหนดเอง
- Docker runtime adapter สำหรับการทำงานแบบ containerized
- CI/CD: beta (อัตโนมัติเมื่อ push) → stable (dispatch แบบ manual) → Docker, crates.io, Scoop, AUR, Homebrew, tweet
- ไบนารี pre-built สำหรับ Linux (x86_64, aarch64, armv7), macOS (x86_64, aarch64), Windows (x86_64)
```bash
docker run -d \
--name zeroclaw \
-e ANTHROPIC_API_KEY=your_key \
-v zeroclaw-data:/app/data \
zeroclaw/zeroclaw:latest
```
---
## การกำหนดค่า
ขั้นต่ำ `~/.zeroclaw/config.toml`:
ZeroClaw ใช้ไฟล์กำหนดค่า YAML โดยค่าเริ่มต้นจะค้นหา `config.yaml`
```toml
default_provider = "anthropic"
api_key = "sk-ant-..."
```yaml
# ผู้ให้บริการเริ่มต้น
provider: anthropic
# การกำหนดค่าผู้ให้บริการ
providers:
anthropic:
api_key: ${ANTHROPIC_API_KEY}
model: claude-3-5-sonnet-20241022
openai:
api_key: ${OPENAI_API_KEY}
model: gpt-4o
# การกำหนดค่าหน่วยความจำ
memory:
backend: sqlite
path: data/memory.db
# การกำหนดค่าช่องทาง
channels:
telegram:
token: ${TELEGRAM_BOT_TOKEN}
```
อ้างอิงการกำหนดค่าฉบับเต็ม: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md)
### การกำหนดค่าช่องทาง
**Telegram:**
```toml
[channels.telegram]
bot_token = "123456:ABC-DEF..."
```
**Discord:**
```toml
[channels.discord]
token = "your-bot-token"
```
**Slack:**
```toml
[channels.slack]
bot_token = "xoxb-..."
app_token = "xapp-..."
```
**WhatsApp:**
```toml
[channels.whatsapp]
enabled = true
```
**Matrix:**
```toml
[channels.matrix]
homeserver_url = "https://matrix.org"
username = "@bot:matrix.org"
password = "..."
```
**Signal:**
```toml
[channels.signal]
phone_number = "+1234567890"
```
### การกำหนดค่า tunnel
```toml
[tunnel]
kind = "cloudflare" # หรือ "tailscale", "ngrok", "openvpn", "custom", "none"
```
รายละเอียด: [อ้างอิงช่องทาง](docs/reference/api/channels-reference.md) · [อ้างอิงการกำหนดค่า](docs/reference/api/config-reference.md)
### รองรับ runtime (ปัจจุบัน)
- **`native`** (ค่าเริ่มต้น) — การทำงานแบบ process โดยตรง เส้นทางที่เร็วที่สุด เหมาะสำหรับสภาพแวดล้อมที่เชื่อถือได้
- **`docker`** — การแยก container เต็มรูปแบบ นโยบายความปลอดภัยที่บังคับใช้ ต้องการ Docker
ตั้ง `runtime.kind = "docker"` สำหรับ sandboxing ที่เข้มงวดหรือการแยกเครือข่าย
## การยืนยันตัวตนแบบสมัครสมาชิก (OpenAI Codex / Claude Code / Gemini)
ZeroClaw รองรับโปรไฟล์การยืนยันตัวตนแบบ subscription-native (หลายบัญชี, เข้ารหัสเมื่อเก็บ)
- ไฟล์จัดเก็บ: `~/.zeroclaw/auth-profiles.json`
- คีย์เข้ารหัส: `~/.zeroclaw/.secret_key`
- รูปแบบ id โปรไฟล์: `<provider>:<profile_name>` (ตัวอย่าง: `openai-codex:work`)
```bash
# OpenAI Codex OAuth (สมัครสมาชิก ChatGPT)
zeroclaw auth login --provider openai-codex --device-code
# Gemini OAuth
zeroclaw auth login --provider gemini --profile default
# Anthropic setup-token
zeroclaw auth paste-token --provider anthropic --profile default --auth-kind authorization
# ตรวจสอบ / refresh / สลับโปรไฟล์
zeroclaw auth status
zeroclaw auth refresh --provider openai-codex --profile default
zeroclaw auth use --provider openai-codex --profile work
# รันเอเจนต์ด้วย auth แบบสมัครสมาชิก
zeroclaw agent --provider openai-codex -m "hello"
zeroclaw agent --provider anthropic -m "hello"
```
## Workspace เอเจนต์ + skill
Root workspace: `~/.zeroclaw/workspace/` (กำหนดค่าได้ผ่าน config)
ไฟล์ prompt ที่ inject:
- `IDENTITY.md` — บุคลิกภาพและบทบาทของเอเจนต์
- `USER.md` — บริบทและความชอบของผู้ใช้
- `MEMORY.md` — ข้อเท็จจริงและบทเรียนระยะยาว
- `AGENTS.md` — ข้อตกลง session และกฎการเริ่มต้น
- `SOUL.md` — อัตลักษณ์หลักและหลักการดำเนินงาน
Skills: `~/.zeroclaw/workspace/skills/<skill>/SKILL.md` หรือ `SKILL.toml`
```bash
# แสดงรายการ skill ที่ติดตั้ง
zeroclaw skills list
# ติดตั้งจาก git
zeroclaw skills install https://github.com/user/my-skill.git
# ตรวจสอบความปลอดภัยก่อนติดตั้ง
zeroclaw skills audit https://github.com/user/my-skill.git
# ลบ skill
zeroclaw skills remove my-skill
```
## คำสั่ง CLI
```bash
# การจัดการ workspace
zeroclaw onboard # วิซาร์ดการตั้งค่าแบบแนะนำ
zeroclaw status # แสดงสถานะ daemon/เอเจนต์
zeroclaw doctor # รันการวินิจฉัยระบบ
# Gateway + daemon
zeroclaw gateway # เริ่มเซิร์ฟเวอร์ gateway (127.0.0.1:42617)
zeroclaw daemon # เริ่ม runtime อัตโนมัติเต็มรูปแบบ
# เอเจนต์
zeroclaw agent # โหมดแชทโต้ตอบ
zeroclaw agent -m "message" # โหมดข้อความเดียว
# การจัดการบริการ
zeroclaw service install # ติดตั้งเป็นบริการ OS (launchd/systemd)
zeroclaw service start|stop|restart|status
# ช่องทาง
zeroclaw channel list # แสดงรายการช่องทางที่กำหนดค่า
zeroclaw channel doctor # ตรวจสอบสุขภาพช่องทาง
zeroclaw channel bind-telegram 123456789
# Cron + การกำหนดเวลา
zeroclaw cron list # แสดงรายการงานที่กำหนดเวลา
zeroclaw cron add "*/5 * * * *" --prompt "Check system health"
zeroclaw cron remove <id>
# หน่วยความจำ
zeroclaw memory list # แสดงรายการหน่วยความจำ
zeroclaw memory get <key> # ดึงหน่วยความจำ
zeroclaw memory stats # สถิติหน่วยความจำ
# โปรไฟล์การยืนยันตัวตน
zeroclaw auth login --provider <name>
zeroclaw auth status
zeroclaw auth use --provider <name> --profile <profile>
# อุปกรณ์ต่อพ่วง
zeroclaw hardware discover # สแกนอุปกรณ์ที่เชื่อมต่อ
zeroclaw peripheral list # แสดงรายการอุปกรณ์ต่อพ่วงที่เชื่อมต่อ
zeroclaw peripheral flash # แฟลช firmware ไปยังอุปกรณ์
# การย้าย
zeroclaw migrate openclaw --dry-run
zeroclaw migrate openclaw
# การเติมเต็ม shell
source <(zeroclaw completions bash)
zeroclaw completions zsh > ~/.zfunc/_zeroclaw
```
อ้างอิงคำสั่งฉบับเต็ม: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
<!-- markdownlint-disable MD001 MD024 -->
## ข้อกำหนดเบื้องต้น
<details>
<summary><strong>Windows</strong></summary>
#### จำเป็น
1. **Visual Studio Build Tools** (ให้ linker MSVC และ Windows SDK):
```powershell
winget install Microsoft.VisualStudio.2022.BuildTools
```
ระหว่างการติดตั้ง (หรือผ่าน Visual Studio Installer) เลือก workload **"Desktop development with C++"**
2. **Rust toolchain:**
```powershell
winget install Rustlang.Rustup
```
หลังติดตั้ง เปิดเทอร์มินัลใหม่และรัน `rustup default stable` เพื่อให้แน่ใจว่า toolchain ที่เสถียรใช้งานอยู่
3. **ตรวจสอบ** ว่าทั้งสองใช้งานได้:
```powershell
rustc --version
cargo --version
```
#### ไม่บังคับ
- **Docker Desktop** — จำเป็นเฉพาะเมื่อใช้ [Docker sandboxed runtime](#รองรับ-runtime-ปัจจุบัน) (`runtime.kind = "docker"`) ติดตั้งผ่าน `winget install Docker.DockerDesktop`
</details>
<details>
<summary><strong>Linux / macOS</strong></summary>
#### จำเป็น
1. **Build essentials:**
- **Linux (Debian/Ubuntu):** `sudo apt install build-essential pkg-config`
- **Linux (Fedora/RHEL):** `sudo dnf group install development-tools && sudo dnf install pkg-config`
- **macOS:** ติดตั้ง Xcode Command Line Tools: `xcode-select --install`
2. **Rust toolchain:**
```bash
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
```
ดู [rustup.rs](https://rustup.rs) สำหรับรายละเอียด
3. **ตรวจสอบ** ว่าทั้งสองใช้งานได้:
```bash
rustc --version
cargo --version
```
#### ตัวติดตั้งบรรทัดเดียว
หรือข้ามขั้นตอนด้านบนและติดตั้งทุกอย่าง (dependencies ระบบ, Rust, ZeroClaw) ในคำสั่งเดียว:
```bash
curl -LsSf https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/install.sh | bash
```
#### ข้อกำหนดทรัพยากรการคอมไพล์
การ build จากซอร์สต้องการทรัพยากรมากกว่าการรันไบนารีที่ได้:
| ทรัพยากร | ขั้นต่ำ | แนะนำ |
| -------------- | ------- | ----------- |
| **RAM + swap** | 2 GB | 4 GB+ |
| **พื้นที่ว่าง** | 6 GB | 10 GB+ |
หากโฮสต์ของคุณต่ำกว่าขั้นต่ำ ใช้ไบนารี pre-built:
```bash
./install.sh --prefer-prebuilt
```
เพื่อต้องการการติดตั้งแบบไบนารีเท่านั้นโดยไม่มี fallback ซอร์ส:
```bash
./install.sh --prebuilt-only
```
#### ไม่บังคับ
- **Docker** — จำเป็นเฉพาะเมื่อใช้ [Docker sandboxed runtime](#รองรับ-runtime-ปัจจุบัน) (`runtime.kind = "docker"`) ติดตั้งผ่านตัวจัดการแพ็กเกจของคุณหรือ [docker.com](https://docs.docker.com/engine/install/)
> **หมายเหตุ:** `cargo build --release` เริ่มต้นใช้ `codegen-units=1` เพื่อลดความดันการคอมไพล์สูงสุด สำหรับ build ที่เร็วขึ้นบนเครื่องที่แรง ใช้ `cargo build --profile release-fast`
</details>
<!-- markdownlint-enable MD001 MD024 -->
### ไบนารี pre-built
Release assets เผยแพร่สำหรับ:
- Linux: `x86_64`, `aarch64`, `armv7`
- macOS: `x86_64`, `aarch64`
- Windows: `x86_64`
ดาวน์โหลด assets ล่าสุดจาก:
<https://github.com/zeroclaw-labs/zeroclaw/releases/latest>
---
## เอกสาร
ใช้เมื่อคุณผ่านขั้นตอน onboarding แล้วและต้องการอ้างอิงที่ลึกกว่า
สำหรับเอกสารโดยละเอียด ดูที่:
- เริ่มด้วย[สารบัญเอกสาร](docs/README.md)สำหรับการนำทางและ "อะไรอยู่ที่ไหน"
- อ่าน[ภาพรวมสถาปัตยกรรม](docs/architecture.md)สำหรับโมเดลระบบทั้งหมด
- ใช้[อ้างอิงการกำหนดค่า](docs/reference/api/config-reference.md)เมื่อคุณต้องการทุก key และตัวอย่าง
- รัน Gateway ตามหนังสือด้วย[runbook การดำเนินงาน](docs/ops/operations-runbook.md)
- ทำตาม [ZeroClaw Onboard](#เริ่มต้นอย่างรวดเร็ว) สำหรับการตั้งค่าแบบแนะนำ
- แก้ไขปัญหาที่พบบ่อยด้วย[คู่มือแก้ไขปัญหา](docs/ops/troubleshooting.md)
- ตรวจสอบ[แนวทางความปลอดภัย](docs/security/README.md)ก่อนเปิดเผยสิ่งใด
- [ศูนย์เอกสาร](docs/README.md)
- [ข้อมูลอ้างอิงคำสั่ง](docs/commands-reference.md)
- [ข้อมูลอ้างอิงผู้ให้บริการ](docs/providers-reference.md)
- [ข้อมูลอ้างอิงช่องทาง](docs/channels-reference.md)
- [ข้อมูลอ้างอิงการกำหนดค่า](docs/config-reference.md)
### เอกสารอ้างอิง
- ศูนย์กลางเอกสาร: [docs/README.md](docs/README.md)
- TOC เอกสารรวม: [docs/SUMMARY.md](docs/SUMMARY.md)
- อ้างอิงคำสั่ง: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
- อ้างอิงการกำหนดค่า: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md)
- อ้างอิง provider: [docs/reference/api/providers-reference.md](docs/reference/api/providers-reference.md)
- อ้างอิงช่องทาง: [docs/reference/api/channels-reference.md](docs/reference/api/channels-reference.md)
- Runbook การดำเนินงาน: [docs/ops/operations-runbook.md](docs/ops/operations-runbook.md)
- การแก้ไขปัญหา: [docs/ops/troubleshooting.md](docs/ops/troubleshooting.md)
### เอกสารความร่วมมือ
- คู่มือการมีส่วนร่วม: [CONTRIBUTING.md](CONTRIBUTING.md)
- นโยบาย PR workflow: [docs/contributing/pr-workflow.md](docs/contributing/pr-workflow.md)
- คู่มือ CI workflow: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- Playbook ผู้ตรวจสอบ: [docs/contributing/reviewer-playbook.md](docs/contributing/reviewer-playbook.md)
- นโยบายเปิดเผยความปลอดภัย: [SECURITY.md](SECURITY.md)
- เทมเพลตเอกสาร: [docs/contributing/doc-template.md](docs/contributing/doc-template.md)
### Deployment + การดำเนินงาน
- คู่มือ deployment เครือข่าย: [docs/ops/network-deployment.md](docs/ops/network-deployment.md)
- Playbook proxy agent: [docs/ops/proxy-agent-playbook.md](docs/ops/proxy-agent-playbook.md)
- คู่มือฮาร์ดแวร์: [docs/hardware/README.md](docs/hardware/README.md)
## Smooth Crab 🦀
ZeroClaw ถูกสร้างสำหรับ smooth crab 🦀 ผู้ช่วย AI ที่เร็วและมีประสิทธิภาพ สร้างโดย Argenis De La Rosa และชุมชน
- [zeroclawlabs.ai](https://zeroclawlabs.ai)
- [@zeroclawlabs](https://x.com/zeroclawlabs)
## สนับสนุน ZeroClaw
หาก ZeroClaw ช่วยงานของคุณและคุณต้องการสนับสนุนการพัฒนาต่อเนื่อง คุณสามารถบริจาคที่นี่:
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=for-the-badge&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
### 🙏 ขอขอบคุณเป็นพิเศษ
ขอขอบคุณจากใจจริงถึงชุมชนและสถาบันที่สร้างแรงบันดาลใจและขับเคลื่อนงาน open-source นี้:
- **Harvard University** — สำหรับการส่งเสริมความอยากรู้ทางปัญญาและผลักดันขอบเขตของสิ่งที่เป็นไปได้
- **MIT** — สำหรับการสนับสนุนความรู้เปิด open source และความเชื่อว่าเทคโนโลยีควรเข้าถึงได้สำหรับทุกคน
- **Sundai Club** — สำหรับชุมชน พลังงาน และแรงผลักดันอย่างไม่หยุดหย่อนในการสร้างสิ่งที่สำคัญ
- **โลก & เหนือกว่า** 🌍✨ — ถึงผู้มีส่วนร่วม นักฝัน และผู้สร้างทุกคนที่ทำให้ open source เป็นพลังเพื่อสิ่งดีๆ นี่สำหรับคุณ
เราสร้างแบบเปิดเพราะไอเดียที่ดีที่สุดมาจากทุกที่ หากคุณอ่านสิ่งนี้ คุณเป็นส่วนหนึ่งของมัน ยินดีต้อนรับ 🦀❤️
---
## การมีส่วนร่วม
ใหม่กับ ZeroClaw? มองหา issues ที่มีป้ายกำกับ [`good first issue`](https://github.com/zeroclaw-labs/zeroclaw/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) — ดู[คู่มือการมีส่วนร่วม](CONTRIBUTING.md#first-time-contributors)สำหรับวิธีเริ่มต้น ยินดีรับ PR ที่สร้างด้วย AI/vibe-coded! 🤖
ดู [CONTRIBUTING.md](CONTRIBUTING.md) และ [CLA.md](docs/contributing/cla.md) ใช้งาน trait แล้วส่ง PR:
- คู่มือ CI workflow: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- `Provider` ใหม่ → `src/providers/`
- `Channel` ใหม่ → `src/channels/`
- `Observer` ใหม่ → `src/observability/`
- `Tool` ใหม่ → `src/tools/`
- `Memory` ใหม่ → `src/memory/`
- `Tunnel` ใหม่ → `src/tunnel/`
- `Peripheral` ใหม่ → `src/peripherals/`
- `Skill` ใหม่ → `~/.zeroclaw/workspace/skills/<name>/`
<!-- BEGIN:RECENT_CONTRIBUTORS -->
<!-- END:RECENT_CONTRIBUTORS -->
## ⚠️ Repository อย่างเป็นทางการ & คำเตือนการแอบอ้าง
**นี่คือ repository อย่างเป็นทางการเพียงแห่งเดียวของ ZeroClaw:**
> https://github.com/zeroclaw-labs/zeroclaw
repository, องค์กร, โดเมน หรือแพ็กเกจอื่นใดที่อ้างว่าเป็น "ZeroClaw" หรือบ่งบอกถึงการเกี่ยวข้องกับ ZeroClaw Labs นั้น**ไม่ได้รับอนุญาตและไม่มีส่วนเกี่ยวข้องกับโปรเจกต์นี้** Fork ที่ไม่ได้รับอนุญาตที่ทราบจะถูกระบุไว้ใน [TRADEMARK.md](docs/maintainers/trademark.md)
หากคุณพบการแอบอ้างหรือการใช้เครื่องหมายการค้าในทางที่ผิด โปรด[เปิด issue](https://github.com/zeroclaw-labs/zeroclaw/issues)
ยินดีต้อนรับการมีส่วนร่วม! โปรดอ่าน [คู่มือการมีส่วนร่วม](CONTRIBUTING.md)
---
## สัญญาอนุญาต
ZeroClaw มี dual-license เพื่อความเปิดกว้างสูงสุดและการปกป้องผู้มีส่วนร่วม:
โปรเจกต์นี้มีสัญญาอนุญาตคู่:
| สัญญาอนุญาต | กรณีการใช้งาน |
|---|---|
| [MIT](LICENSE-MIT) | Open-source, วิจัย, วิชาการ, ใช้ส่วนตัว |
| [Apache 2.0](LICENSE-APACHE) | การปกป้องสิทธิบัตร, สถาบัน, deployment เชิงพาณิชย์ |
- MIT License
- Apache License, เวอร์ชัน 2.0
คุณสามารถเลือกสัญญาอนุญาตใดก็ได้ **ผู้มีส่วนร่วมให้สิทธิ์โดยอัตโนมัติภายใต้ทั้งสอง** — ดู [CLA.md](docs/contributing/cla.md) สำหรับข้อตกลงผู้มีส่วนร่วมฉบับเต็ม
### เครื่องหมายการค้า
ชื่อและโลโก้ **ZeroClaw** เป็นเครื่องหมายการค้าของ ZeroClaw Labs สัญญาอนุญาตนี้ไม่ให้สิทธิ์ในการใช้เพื่อบ่งบอกถึงการรับรองหรือการเกี่ยวข้อง ดู [TRADEMARK.md](docs/maintainers/trademark.md) สำหรับการใช้งานที่อนุญาตและห้าม
### การปกป้องผู้มีส่วนร่วม
- คุณ**คงสิทธิ์ลิขสิทธิ์**ของผลงานของคุณ
- **การให้สิทธิ์สิทธิบัตร** (Apache 2.0) ปกป้องคุณจากการเรียกร้องสิทธิบัตรโดยผู้มีส่วนร่วมคนอื่น
- ผลงานของคุณ**ได้รับการระบุอย่างถาวร**ในประวัติ commit และ [NOTICE](NOTICE)
- ไม่มีสิทธิ์เครื่องหมายการค้าที่ถ่ายโอนโดยการมีส่วนร่วม
ดู [LICENSE-APACHE](LICENSE-APACHE) และ [LICENSE-MIT](LICENSE-MIT) สำหรับรายละเอียด
---
**ZeroClaw** — ไม่มีโอเวอร์เฮด ไม่มีการประนีประนอม Deploy ที่ไหนก็ได้ สลับอะไรก็ได้ 🦀
## ชุมชน
## ผู้มีส่วนร่วม
- [Telegram](https://t.me/zeroclawlabs)
- [Facebook Group](https://www.facebook.com/groups/zeroclaw)
- [WeChat Group](https://zeroclawlabs.cn/group.jpg)
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors">
<img src="https://contrib.rocks/image?repo=zeroclaw-labs/zeroclaw" alt="ZeroClaw contributors" />
</a>
---
รายการนี้สร้างจากกราฟผู้มีส่วนร่วม GitHub และอัปเดตโดยอัตโนมัติ
## ผู้สนับสนุน
## ประวัติดาว
หาก ZeroClaw มีประโยชน์สำหรับคุณ โปรดพิจารณาซื้อกาแฟให้เรา:
<p align="center">
<a href="https://www.star-history.com/#zeroclaw-labs/zeroclaw&type=date&legend=top-left">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&theme=dark&legend=top-left" />
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
</picture>
</a>
</p>
[![Buy Me a Coffee](https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee)](https://buymeacoffee.com/argenistherose)
<!-- BEGIN:RECENT_CONTRIBUTORS -->
### 🌟 Recent Contributors (v0.3.1)
3 contributors shipped features, fixes, and improvements in this release cycle:
- **Argenis**
- **argenis de la rosa**
- **Claude Opus 4.6**
Thank you to everyone who opened issues, reviewed PRs, translated docs, and helped test. Every contribution matters. 🦀
<!-- END:RECENT_CONTRIBUTORS -->

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,29 +1,23 @@
<p align="center">
<img src="https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/docs/assets/zeroclaw-banner.png" alt="ZeroClaw" width="600" />
<img src="zeroclaw.png" alt="ZeroClaw" width="200" />
</p>
<h1 align="center">🦀 ZeroClaw — Персональний AI-Асистент</h1>
<h1 align="center">ZeroClaw 🦀</h1>
<p align="center">
<strong>Нуль накладних витрат. Нуль компромісів. 100% Rust. 100% Агностичний.</strong><br>
⚡️ <strong>Працює на обладнанні за $10 з <5MB RAM: це на 99% менше пам'яті, ніж OpenClaw, і на 98% дешевше, ніж Mac mini!</strong>
⚡️ <strong>Працює на $10 обладнанні з <5MB RAM: Це на 99% менше пам'яті ніж OpenClaw і на 98% дешевше ніж Mac mini!</strong>
</p>
<p align="center">
<a href="LICENSE-APACHE"><img src="https://img.shields.io/badge/license-MIT%20OR%20Apache%202.0-blue.svg" alt="License: MIT OR Apache-2.0" /></a>
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors"><img src="https://img.shields.io/github/contributors/zeroclaw-labs/zeroclaw?color=green" alt="Contributors" /></a>
<a href="NOTICE"><img src="https://img.shields.io/badge/contributors-27+-green.svg" alt="Contributors" /></a>
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
<a href="https://x.com/zeroclawlabs?s=21"><img src="https://img.shields.io/badge/X-%40zeroclawlabs-000000?style=flat&logo=x&logoColor=white" alt="X: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclawlabs"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
<a href="https://discord.com/invite/wDshRVqRjx"><img src="https://img.shields.io/badge/Discord-Join-5865F2?style=flat&logo=discord&logoColor=white" alt="Discord" /></a>
<a href="https://www.instagram.com/therealzeroclaw"><img src="https://img.shields.io/badge/Instagram-%40therealzeroclaw-E4405F?style=flat&logo=instagram&logoColor=white" alt="Instagram: @therealzeroclaw" /></a>
<a href="https://www.tiktok.com/@zeroclawlabs"><img src="https://img.shields.io/badge/TikTok-%40zeroclawlabs-000000?style=flat&logo=tiktok&logoColor=white" alt="TikTok: @zeroclawlabs" /></a>
<a href="https://www.rednote.com/user/profile/69b735e6000000002603927e"><img src="https://img.shields.io/badge/RedNote-Official-FF2442?style=flat" alt="RedNote" /></a>
<a href="https://www.reddit.com/r/zeroclawlabs/"><img src="https://img.shields.io/badge/Reddit-r%2Fzeroclawlabs-FF4500?style=flat&logo=reddit&logoColor=white" alt="Reddit: r/zeroclawlabs" /></a>
</p>
<p align="center">
Створено студентами та учасниками спільнот Harvard, MIT і Sundai.Club.
<a href="https://zeroclawlabs.cn/group.jpg"><img src="https://img.shields.io/badge/WeChat-Group-B7D7A8?logo=wechat&logoColor=white" alt="WeChat Group" /></a>
<a href="https://www.xiaohongshu.com/user/profile/67cbfc43000000000d008307?xsec_token=AB73VnYnGNx5y36EtnnZfGmAmS-6Wzv8WMuGpfwfkg6Yc%3D&xsec_source=pc_search"><img src="https://img.shields.io/badge/Xiaohongshu-Official-FF2442?style=flat" alt="Xiaohongshu: Official" /></a>
<a href="https://t.me/zeroclawlabs"><img src="https://img.shields.io/badge/Telegram-%40zeroclawlabs-26A5E4?style=flat&logo=telegram&logoColor=white" alt="Telegram: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclaw"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
</p>
<p align="center">
@ -61,695 +55,149 @@
<a href="README.nb.md">🇳🇴 Norsk</a>
</p>
ZeroClaw — це персональний AI-асистент, який ви запускаєте на власних пристроях. Він відповідає вам у каналах, які ви вже використовуєте (WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work та інші). Він має веб-панель керування для контролю в реальному часі та може підключатися до апаратних периферійних пристроїв (ESP32, STM32, Arduino, Raspberry Pi). Gateway — це лише площина управління, а продукт — це асистент.
Якщо вам потрібен персональний, одного користувача асистент, який відчувається локальним, швидким і завжди доступним — це він.
<p align="center">
<a href="https://zeroclawlabs.ai">Вебсайт</a> ·
<a href="docs/README.md">Документація</a> ·
<a href="docs/architecture.md">Архітектура</a> ·
<a href="#швидкий-старт-tldr">Початок роботи</a> ·
<a href="#міграція-з-openclaw">Міграція з OpenClaw</a> ·
<a href="docs/ops/troubleshooting.md">Усунення неполадок</a> ·
<a href="https://discord.com/invite/wDshRVqRjx">Discord</a>
</p>
> **Рекомендований спосіб налаштування:** виконайте `zeroclaw onboard` у вашому терміналі. ZeroClaw Onboard покроково проведе вас через налаштування gateway, робочого простору, каналів і провайдера. Це рекомендований шлях налаштування, який працює на macOS, Linux і Windows (через WSL2). Нова установка? Почніть тут: [Початок роботи](#швидкий-старт-tldr)
### Subscription Auth (OAuth)
- **OpenAI Codex** (підписка ChatGPT)
- **Gemini** (Google OAuth)
- **Anthropic** (API-ключ або токен авторизації)
Примітка щодо моделей: хоча підтримується багато провайдерів/моделей, для найкращого досвіду використовуйте найпотужнішу модель останнього покоління, доступну вам. Дивіться [Онбординг](#швидкий-старт-tldr).
Конфігурація моделей + CLI: [Довідник провайдерів](docs/reference/api/providers-reference.md)
Ротація профілів авторизації (OAuth vs API-ключі) + аварійне перемикання: [Аварійне перемикання моделей](docs/reference/api/providers-reference.md)
## Встановлення (рекомендовано)
Середовище виконання: стабільний набір інструментів Rust. Єдиний бінарний файл, без залежностей середовища виконання.
### Homebrew (macOS/Linuxbrew)
```bash
brew install zeroclaw
```
### Встановлення одним кліком
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./install.sh
```
`zeroclaw onboard` запускається автоматично після встановлення для налаштування вашого робочого простору та провайдера.
## Швидкий старт (TL;DR)
Повний посібник для початківців (авторизація, сполучення, канали): [Початок роботи](docs/setup-guides/one-click-bootstrap.md)
```bash
# Встановлення + онбординг
./install.sh --api-key "sk-..." --provider openrouter
# Запуск gateway (вебхук-сервер + веб-панель)
zeroclaw gateway # за замовчуванням: 127.0.0.1:42617
zeroclaw gateway --port 0 # випадковий порт (посилена безпека)
# Розмова з асистентом
zeroclaw agent -m "Hello, ZeroClaw!"
# Інтерактивний режим
zeroclaw agent
# Запуск повного автономного середовища (gateway + канали + cron + hands)
zeroclaw daemon
# Перевірка статусу
zeroclaw status
# Запуск діагностики
zeroclaw doctor
```
Оновлюєтесь? Виконайте `zeroclaw doctor` після оновлення.
### З вихідного коду (розробка)
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
cargo build --release --locked
cargo install --path . --force --locked
zeroclaw onboard
```
> **Резервний варіант для розробників (без глобальної установки):** додайте до команд префікс `cargo run --release --` (приклад: `cargo run --release -- status`).
## Міграція з OpenClaw
ZeroClaw може імпортувати ваш робочий простір, пам'ять та конфігурацію OpenClaw:
```bash
# Попередній перегляд того, що буде мігровано (безпечно, лише читання)
zeroclaw migrate openclaw --dry-run
# Виконання міграції
zeroclaw migrate openclaw
```
Це мігрує ваші записи пам'яті, файли робочого простору та конфігурацію з `~/.openclaw/` до `~/.zeroclaw/`. Конфігурація автоматично конвертується з JSON у TOML.
## Стандартні налаштування безпеки (доступ через DM)
ZeroClaw підключається до реальних платформ обміну повідомленнями. Розглядайте вхідні DM як ненадійний ввід.
Повний посібник з безпеки: [SECURITY.md](SECURITY.md)
Поведінка за замовчуванням на всіх каналах:
- **Сполучення через DM** (за замовчуванням): невідомі відправники отримують короткий код сполучення, і бот не обробляє їхні повідомлення.
- Підтвердіть за допомогою: `zeroclaw pairing approve <channel> <code>` (після чого відправник додається до локального списку дозволених).
- Публічні вхідні DM вимагають явного увімкнення в `config.toml`.
- Виконайте `zeroclaw doctor` для виявлення ризикованих або неправильно налаштованих політик DM.
**Рівні автономності:**
| Рівень | Поведінка |
|--------|-----------|
| `ReadOnly` | Агент може спостерігати, але не діяти |
| `Supervised` (за замовчуванням) | Агент діє із затвердженням для операцій середнього/високого ризику |
| `Full` | Агент діє автономно в межах політики |
**Шари ізоляції:** ізоляція робочого простору, блокування обходу шляху, списки дозволених команд, заборонені шляхи (`/etc`, `/root`, `~/.ssh`), обмеження частоти (макс. дій/годину, ліміти витрат/день).
---
<!-- BEGIN:WHATS_NEW -->
### 🚀 What's New in v0.3.1 (March 2026)
| Area | Highlights |
|---|---|
| ci | add Termux (aarch64-linux-android) release target |
<!-- END:WHATS_NEW -->
### Оголошення
## Що таке ZeroClaw?
Використовуйте цю дошку для важливих повідомлень (критичні зміни, рекомендації з безпеки, вікна обслуговування та блокери випусків).
ZeroClaw — це легка, змінювана та розширювана інфраструктура AI-асистента, написана на Rust. Вона з'єднує різних LLM-провайдерів (Anthropic, OpenAI, Google, Ollama тощо) через уніфікований інтерфейс і підтримує багато каналів (Telegram, Matrix, CLI тощо).
| Дата (UTC) | Рівень | Повідомлення | Дія |
| ---------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 2026-02-19 | _Критичний_ | Ми **не пов'язані** з `openagen/zeroclaw`, `zeroclaw.org` або `zeroclaw.net`. Домени `zeroclaw.org` та `zeroclaw.net` наразі вказують на форк `openagen/zeroclaw`, і цей домен/репозиторій видають себе за наш офіційний вебсайт/проєкт. | Не довіряйте інформації, бінарним файлам, збору коштів або оголошенням з цих джерел. Використовуйте лише [цей репозиторій](https://github.com/zeroclaw-labs/zeroclaw) та наші верифіковані соціальні акаунти. |
| 2026-02-21 | _Важливий_ | Наш офіційний вебсайт тепер доступний: [zeroclawlabs.ai](https://zeroclawlabs.ai). Дякуємо за терпіння, поки ми готували запуск. Ми все ще бачимо спроби імітації, тому **не** приєднуйтесь до будь-якої інвестиційної або збіркової діяльності, що використовує назву ZeroClaw, якщо вона не опублікована через наші офіційні канали. | Використовуйте [цей репозиторій](https://github.com/zeroclaw-labs/zeroclaw) як єдине джерело істини. Слідкуйте за [X (@zeroclawlabs)](https://x.com/zeroclawlabs?s=21), [Facebook (Group)](https://www.facebook.com/groups/zeroclawlabs) та [Reddit (r/zeroclawlabs)](https://www.reddit.com/r/zeroclawlabs/) для офіційних оновлень. |
| 2026-02-19 | _Важливий_ | Anthropic оновила умови автентифікації та використання облікових даних 2026-02-19. OAuth-токени Claude Code (Free, Pro, Max) призначені виключно для Claude Code та Claude.ai; використання OAuth-токенів Claude Free/Pro/Max у будь-якому іншому продукті, інструменті або сервісі (включаючи Agent SDK) не дозволяється та може порушувати Умови обслуговування для споживачів. | Будь ласка, тимчасово уникайте інтеграцій Claude Code OAuth для запобігання потенційних втрат. Оригінальний пункт: [Authentication and Credential Use](https://code.claude.com/docs/en/legal-and-compliance#authentication-and-credential-use). |
### Ключові особливості
## Основні можливості
- **🦀 Написано на Rust**: Висока продуктивність, безпека пам'яті та абстракції без накладних витрат
- **🔌 Агностичний до провайдерів**: Підтримка OpenAI, Anthropic, Google Gemini, Ollama та інших
- **📱 Багатоканальність**: Telegram, Matrix (з E2EE), CLI та інші
- **🧠 Плагінна пам'ять**: SQLite та Markdown бекенди
- **🛠️ Розширювані інструменти**: Легко додавайте власні інструменти
- **🔒 Безпека першочергово**: Зворотний проксі, дизайн з пріоритетом конфіденційності
- **Легке середовище за замовчуванням** — типові робочі процеси CLI та статусу працюють у конверті пам'яті декількох мегабайтів на релізних збірках.
- **Економічне розгортання** — розроблено для плат за $10 і малих хмарних інстансів, без важких залежностей середовища виконання.
- **Швидкий холодний старт** — однобінарне середовище Rust забезпечує майже миттєвий запуск команд і демона.
- **Портативна архітектура** — один бінарний файл для ARM, x86 та RISC-V зі змінними провайдерами/каналами/інструментами.
- **Локальний Gateway** — єдина площина управління для сесій, каналів, інструментів, cron, SOP та подій.
- **Багатоканальна скринька** — WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, Nostr, Mattermost, Nextcloud Talk, DingTalk, Lark, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WebSocket та інші.
- **Мультиагентна оркестрація (Hands)** — автономні рої агентів, що працюють за розкладом і стають розумнішими з часом.
- **Стандартні операційні процедури (SOPs)** — автоматизація робочих процесів на основі подій з MQTT, webhook, cron та тригерами периферійних пристроїв.
- **Веб-панель керування** — веб-інтерфейс React 19 + Vite з чатом у реальному часі, браузером пам'яті, редактором конфігурації, менеджером cron та інспектором інструментів.
- **Апаратні периферійні пристрої** — ESP32, STM32 Nucleo, Arduino, Raspberry Pi GPIO через трейт `Peripheral`.
- **Першокласні інструменти** — shell, file I/O, browser, git, web fetch/search, MCP, Jira, Notion, Google Workspace та 70+ інших.
- **Хуки життєвого циклу** — перехоплення та модифікація викликів LLM, виконань інструментів і повідомлень на кожному етапі.
- **Платформа навичок** — вбудовані, спільноти та навички робочого простору з аудитом безпеки.
- **Підтримка тунелів** — Cloudflare, Tailscale, ngrok, OpenVPN та власні тунелі для віддаленого доступу.
---
### Чому команди обирають ZeroClaw
## Швидкий старт
- **Легкий за замовчуванням:** малий бінарний файл Rust, швидкий запуск, низьке споживання пам'яті.
- **Безпечний за проєктуванням:** сполучення, суворе ізолювання, явні списки дозволених, обмеження робочого простору.
- **Повністю змінний:** основні системи — це трейти (провайдери, канали, інструменти, пам'ять, тунелі).
- **Без прив'язки:** підтримка провайдерів, сумісних з OpenAI + підключувані власні ендпоінти.
### Вимоги
## Порівняльний бенчмарк (ZeroClaw проти OpenClaw, відтворюваний)
- Rust 1.70+
- API-ключ LLM-провайдера (Anthropic, OpenAI тощо)
Локальний швидкий бенчмарк (macOS arm64, лютий 2026), нормалізований для edge-обладнання 0,8 ГГц.
| | OpenClaw | NanoBot | PicoClaw | ZeroClaw 🦀 |
| ------------------------- | ------------- | -------------- | --------------- | -------------------- |
| **Мова** | TypeScript | Python | Go | **Rust** |
| **RAM** | > 1GB | > 100MB | < 10MB | **< 5MB** |
| **Запуск (ядро 0,8 ГГц)**| > 500s | > 30s | < 1s | **< 10ms** |
| **Розмір бінарного файлу**| ~28MB (dist) | N/A (Scripts) | ~8MB | **~8.8 MB** |
| **Вартість** | Mac Mini $599 | Linux SBC ~$50 | Linux Board $10 | **Будь-яке обладнання $10** |
> Примітки: результати ZeroClaw виміряні на релізних збірках за допомогою `/usr/bin/time -l`. OpenClaw вимагає середовище Node.js (зазвичай ~390MB додаткових накладних витрат пам'яті), тоді як NanoBot вимагає середовище Python. PicoClaw і ZeroClaw — це статичні бінарні файли. Наведені цифри RAM — це пам'ять часу виконання; вимоги до компіляції вищі.
<p align="center">
<img src="docs/assets/zeroclaw-comparison.jpeg" alt="ZeroClaw vs OpenClaw Comparison" width="800" />
</p>
### Відтворюване локальне вимірювання
### Встановлення
```bash
cargo build --release
ls -lh target/release/zeroclaw
# Клонуйте репозиторій
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
/usr/bin/time -l target/release/zeroclaw --help
/usr/bin/time -l target/release/zeroclaw status
# Зберіть проект
cargo build --release
# Запустіть
cargo run --release
```
## Все, що ми побудували на сьогодні
### З Docker
### Основна платформа
- Gateway HTTP/WS/SSE площина управління з сесіями, присутністю, конфігурацією, cron, вебхуками, веб-панеллю та сполученням.
- CLI-поверхня: `gateway`, `agent`, `onboard`, `doctor`, `status`, `service`, `migrate`, `auth`, `cron`, `channel`, `skills`.
- Цикл оркестрації агента з диспетчеризацією інструментів, побудовою промптів, класифікацією повідомлень та завантаженням пам'яті.
- Модель сесій з примусовим виконанням політик безпеки, рівнями автономності та затвердженням операцій.
- Стійкий обгортка провайдера з аварійним перемиканням, повторами та маршрутизацією моделей через 20+ LLM-бекендів.
### Канали
Канали: WhatsApp (нативний), Telegram, Slack, Discord, Signal, iMessage, Matrix, IRC, Email, Bluesky, DingTalk, Lark, Mattermost, Nextcloud Talk, Nostr, QQ, Reddit, LinkedIn, Twitter, MQTT, WeChat Work, WATI, Mochat, Linq, Notion, WebSocket, ClawdTalk.
З feature-гейтами: Matrix (`channel-matrix`), Lark (`channel-lark`), Nostr (`channel-nostr`).
### Веб-панель керування
Веб-панель React 19 + Vite 6 + Tailwind CSS 4, що обслуговується безпосередньо з Gateway:
- **Панель керування** — огляд системи, стан здоров'я, час роботи, відстеження витрат
- **Чат з агентом** — інтерактивний чат з агентом
- **Пам'ять** — перегляд та керування записами пам'яті
- **Конфігурація** — перегляд та редагування конфігурації
- **Cron** — керування запланованими завданнями
- **Інструменти** — перегляд доступних інструментів
- **Логи** — перегляд журналів активності агента
- **Витрати** — відстеження використання токенів та витрат
- **Діагностика** — діагностика стану системи
- **Інтеграції** — стан та налаштування інтеграцій
- **Сполучення** — керування сполученням пристроїв
### Цільові прошивки
| Ціль | Платформа | Призначення |
|------|-----------|-------------|
| ESP32 | Espressif ESP32 | Бездротовий периферійний агент |
| ESP32-UI | ESP32 + Display | Агент з візуальним інтерфейсом |
| STM32 Nucleo | STM32 (ARM Cortex-M) | Промисловий периферійний пристрій |
| Arduino | Arduino | Базовий міст датчиків/виконавчих пристроїв |
| Uno Q Bridge | Arduino Uno | Послідовний міст до агента |
### Інструменти + автоматизація
- **Основні:** shell, file read/write/edit, git operations, glob search, content search
- **Веб:** browser control, web fetch, web search, screenshot, image info, PDF read
- **Інтеграції:** Jira, Notion, Google Workspace, Microsoft 365, LinkedIn, Composio, Pushover
- **MCP:** Model Context Protocol tool wrapper + відкладені набори інструментів
- **Планування:** cron add/remove/update/run, schedule tool
- **Пам'ять:** recall, store, forget, knowledge, project intel
- **Розширені:** delegate (агент-агенту), swarm, model switch/routing, security ops, cloud ops
- **Апаратне забезпечення:** board info, memory map, memory read (з feature-гейтом)
### Середовище виконання + безпека
- **Рівні автономності:** ReadOnly, Supervised (за замовчуванням), Full.
- **Ізоляція:** ізоляція робочого простору, блокування обходу шляху, списки дозволених команд, заборонені шляхи, Landlock (Linux), Bubblewrap.
- **Обмеження частоти:** максимум дій на годину, максимум витрат на день (налаштовуване).
- **Затвердження операцій:** інтерактивне затвердження для операцій середнього/високого ризику.
- **Екстрена зупинка:** можливість екстреного вимкнення.
- **129+ тестів безпеки** в автоматизованому CI.
### Операції + пакування
- Веб-панель, що обслуговується безпосередньо з Gateway.
- Підтримка тунелів: Cloudflare, Tailscale, ngrok, OpenVPN, власна команда.
- Docker runtime adapter для контейнерного виконання.
- CI/CD: beta (автоматично при push) → stable (ручний запуск) → Docker, crates.io, Scoop, AUR, Homebrew, tweet.
- Попередньо зібрані бінарні файли для Linux (x86_64, aarch64, armv7), macOS (x86_64, aarch64), Windows (x86_64).
```bash
docker run -d \
--name zeroclaw \
-e ANTHROPIC_API_KEY=your_key \
-v zeroclaw-data:/app/data \
zeroclaw/zeroclaw:latest
```
---
## Конфігурація
Мінімальний `~/.zeroclaw/config.toml`:
ZeroClaw використовує YAML-файл конфігурації. За замовчуванням він шукає `config.yaml`.
```toml
default_provider = "anthropic"
api_key = "sk-ant-..."
```yaml
# Провайдер за замовчуванням
provider: anthropic
# Конфігурація провайдерів
providers:
anthropic:
api_key: ${ANTHROPIC_API_KEY}
model: claude-3-5-sonnet-20241022
openai:
api_key: ${OPENAI_API_KEY}
model: gpt-4o
# Конфігурація пам'яті
memory:
backend: sqlite
path: data/memory.db
# Конфігурація каналів
channels:
telegram:
token: ${TELEGRAM_BOT_TOKEN}
```
Повний довідник конфігурації: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md).
### Конфігурація каналів
**Telegram:**
```toml
[channels.telegram]
bot_token = "123456:ABC-DEF..."
```
**Discord:**
```toml
[channels.discord]
token = "your-bot-token"
```
**Slack:**
```toml
[channels.slack]
bot_token = "xoxb-..."
app_token = "xapp-..."
```
**WhatsApp:**
```toml
[channels.whatsapp]
enabled = true
```
**Matrix:**
```toml
[channels.matrix]
homeserver_url = "https://matrix.org"
username = "@bot:matrix.org"
password = "..."
```
**Signal:**
```toml
[channels.signal]
phone_number = "+1234567890"
```
### Конфігурація тунелів
```toml
[tunnel]
kind = "cloudflare" # або "tailscale", "ngrok", "openvpn", "custom", "none"
```
Деталі: [Довідник каналів](docs/reference/api/channels-reference.md) · [Довідник конфігурації](docs/reference/api/config-reference.md)
### Підтримка середовищ виконання (поточна)
- **`native`** (за замовчуванням) — пряме виконання процесу, найшвидший шлях, ідеальний для довірених середовищ.
- **`docker`** — повна контейнерна ізоляція, примусові політики безпеки, вимагає Docker.
Встановіть `runtime.kind = "docker"` для суворої ізоляції або мережевої ізоляції.
## Subscription Auth (OpenAI Codex / Claude Code / Gemini)
ZeroClaw підтримує профілі авторизації на основі підписки (мультиакаунт, шифрування в стані спокою).
- Файл сховища: `~/.zeroclaw/auth-profiles.json`
- Ключ шифрування: `~/.zeroclaw/.secret_key`
- Формат ідентифікатора профілю: `<provider>:<profile_name>` (приклад: `openai-codex:work`)
```bash
# OpenAI Codex OAuth (підписка ChatGPT)
zeroclaw auth login --provider openai-codex --device-code
# Gemini OAuth
zeroclaw auth login --provider gemini --profile default
# Anthropic setup-token
zeroclaw auth paste-token --provider anthropic --profile default --auth-kind authorization
# Перевірка / оновлення / перемикання профілю
zeroclaw auth status
zeroclaw auth refresh --provider openai-codex --profile default
zeroclaw auth use --provider openai-codex --profile work
# Запуск агента з авторизацією підписки
zeroclaw agent --provider openai-codex -m "hello"
zeroclaw agent --provider anthropic -m "hello"
```
## Робочий простір агента + навички
Корінь робочого простору: `~/.zeroclaw/workspace/` (налаштовується через конфігурацію).
Вбудовані файли промптів:
- `IDENTITY.md` — особистість та роль агента
- `USER.md` — контекст та налаштування користувача
- `MEMORY.md` — довгострокові факти та уроки
- `AGENTS.md` — конвенції сесій та правила ініціалізації
- `SOUL.md` — основна ідентичність та операційні принципи
Навички: `~/.zeroclaw/workspace/skills/<skill>/SKILL.md` або `SKILL.toml`.
```bash
# Список встановлених навичок
zeroclaw skills list
# Встановлення з git
zeroclaw skills install https://github.com/user/my-skill.git
# Аудит безпеки перед встановленням
zeroclaw skills audit https://github.com/user/my-skill.git
# Видалення навички
zeroclaw skills remove my-skill
```
## Команди CLI
```bash
# Керування робочим простором
zeroclaw onboard # Покроковий майстер налаштування
zeroclaw status # Показати стан демона/агента
zeroclaw doctor # Запустити діагностику системи
# Gateway + демон
zeroclaw gateway # Запустити сервер gateway (127.0.0.1:42617)
zeroclaw daemon # Запустити повне автономне середовище
# Агент
zeroclaw agent # Інтерактивний режим чату
zeroclaw agent -m "message" # Режим одного повідомлення
# Керування сервісом
zeroclaw service install # Встановити як системний сервіс (launchd/systemd)
zeroclaw service start|stop|restart|status
# Канали
zeroclaw channel list # Список налаштованих каналів
zeroclaw channel doctor # Перевірка стану каналів
zeroclaw channel bind-telegram 123456789
# Cron + планування
zeroclaw cron list # Список запланованих завдань
zeroclaw cron add "*/5 * * * *" --prompt "Check system health"
zeroclaw cron remove <id>
# Пам'ять
zeroclaw memory list # Список записів пам'яті
zeroclaw memory get <key> # Отримати запис пам'яті
zeroclaw memory stats # Статистика пам'яті
# Профілі авторизації
zeroclaw auth login --provider <name>
zeroclaw auth status
zeroclaw auth use --provider <name> --profile <profile>
# Апаратні периферійні пристрої
zeroclaw hardware discover # Сканування підключених пристроїв
zeroclaw peripheral list # Список підключених периферійних пристроїв
zeroclaw peripheral flash # Прошивка пристрою
# Міграція
zeroclaw migrate openclaw --dry-run
zeroclaw migrate openclaw
# Автодоповнення оболонки
source <(zeroclaw completions bash)
zeroclaw completions zsh > ~/.zfunc/_zeroclaw
```
Повний довідник команд: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
<!-- markdownlint-disable MD001 MD024 -->
## Передумови
<details>
<summary><strong>Windows</strong></summary>
#### Обов'язково
1. **Visual Studio Build Tools** (надає компонувальник MSVC та Windows SDK):
```powershell
winget install Microsoft.VisualStudio.2022.BuildTools
```
Під час встановлення (або через Visual Studio Installer) виберіть робоче навантаження **"Desktop development with C++"**.
2. **Набір інструментів Rust:**
```powershell
winget install Rustlang.Rustup
```
Після встановлення відкрийте новий термінал і виконайте `rustup default stable`, щоб переконатися, що стабільний набір інструментів активний.
3. **Перевірте**, що обидва працюють:
```powershell
rustc --version
cargo --version
```
#### Необов'язково
- **Docker Desktop** — потрібен лише при використанні [ізольованого середовища Docker](#підтримка-середовищ-виконання-поточна) (`runtime.kind = "docker"`). Встановлення через `winget install Docker.DockerDesktop`.
</details>
<details>
<summary><strong>Linux / macOS</strong></summary>
#### Обов'язково
1. **Базові інструменти збірки:**
- **Linux (Debian/Ubuntu):** `sudo apt install build-essential pkg-config`
- **Linux (Fedora/RHEL):** `sudo dnf group install development-tools && sudo dnf install pkg-config`
- **macOS:** Встановіть Xcode Command Line Tools: `xcode-select --install`
2. **Набір інструментів Rust:**
```bash
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
```
Деталі на [rustup.rs](https://rustup.rs).
3. **Перевірте**, що обидва працюють:
```bash
rustc --version
cargo --version
```
#### Встановлення одним рядком
Або пропустіть кроки вище і встановіть все (системні залежності, Rust, ZeroClaw) однією командою:
```bash
curl -LsSf https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/install.sh | bash
```
#### Вимоги до ресурсів для компіляції
Збірка з вихідного коду вимагає більше ресурсів, ніж запуск результуючого бінарного файлу:
| Ресурс | Мінімум | Рекомендовано |
| -------------- | ------- | ----------- |
| **RAM + swap** | 2 GB | 4 GB+ |
| **Вільний диск** | 6 GB | 10 GB+ |
Якщо ваш хост нижче мінімуму, використовуйте попередньо зібрані бінарні файли:
```bash
./install.sh --prefer-prebuilt
```
Для встановлення лише бінарного файлу без резервного варіанту з вихідного коду:
```bash
./install.sh --prebuilt-only
```
#### Необов'язково
- **Docker** — потрібен лише при використанні [ізольованого середовища Docker](#підтримка-середовищ-виконання-поточна) (`runtime.kind = "docker"`). Встановлення через менеджер пакетів або [docker.com](https://docs.docker.com/engine/install/).
> **Примітка:** Стандартна команда `cargo build --release` використовує `codegen-units=1` для зниження пікового навантаження при компіляції. Для швидших збірок на потужних машинах використовуйте `cargo build --profile release-fast`.
</details>
<!-- markdownlint-enable MD001 MD024 -->
### Попередньо зібрані бінарні файли
Релізні артефакти публікуються для:
- Linux: `x86_64`, `aarch64`, `armv7`
- macOS: `x86_64`, `aarch64`
- Windows: `x86_64`
Завантажте останні артефакти з:
<https://github.com/zeroclaw-labs/zeroclaw/releases/latest>
---
## Документація
Використовуйте ці матеріали, коли ви пройшли онбординг і хочете глибшу довідку.
Для детальної документації дивіться:
- Почніть з [індексу документації](docs/README.md) для навігації та "що де знаходиться".
- Прочитайте [огляд архітектури](docs/architecture.md) для повної моделі системи.
- Використовуйте [довідник конфігурації](docs/reference/api/config-reference.md), коли вам потрібен кожен ключ і приклад.
- Запускайте Gateway за інструкцією з [операційного посібника](docs/ops/operations-runbook.md).
- Слідуйте [ZeroClaw Onboard](#швидкий-старт-tldr) для покрокового налаштування.
- Діагностуйте типові збої за допомогою [посібника з усунення неполадок](docs/ops/troubleshooting.md).
- Перегляньте [рекомендації з безпеки](docs/security/README.md) перед будь-яким відкритим доступом.
- [Хаб документації](docs/README.md)
- [Довідник команд](docs/commands-reference.md)
- [Довідник провайдерів](docs/providers-reference.md)
- [Довідник каналів](docs/channels-reference.md)
- [Довідник конфігурації](docs/config-reference.md)
### Довідкова документація
- Хаб документації: [docs/README.md](docs/README.md)
- Єдиний зміст документації: [docs/SUMMARY.md](docs/SUMMARY.md)
- Довідник команд: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
- Довідник конфігурації: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md)
- Довідник провайдерів: [docs/reference/api/providers-reference.md](docs/reference/api/providers-reference.md)
- Довідник каналів: [docs/reference/api/channels-reference.md](docs/reference/api/channels-reference.md)
- Операційний посібник: [docs/ops/operations-runbook.md](docs/ops/operations-runbook.md)
- Усунення неполадок: [docs/ops/troubleshooting.md](docs/ops/troubleshooting.md)
### Документація для співпраці
- Посібник з внеску: [CONTRIBUTING.md](CONTRIBUTING.md)
- Політика робочого процесу PR: [docs/contributing/pr-workflow.md](docs/contributing/pr-workflow.md)
- Посібник CI робочих процесів: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- Посібник рецензента: [docs/contributing/reviewer-playbook.md](docs/contributing/reviewer-playbook.md)
- Політика розкриття вразливостей: [SECURITY.md](SECURITY.md)
- Шаблон документації: [docs/contributing/doc-template.md](docs/contributing/doc-template.md)
### Розгортання + операції
- Посібник з мережевого розгортання: [docs/ops/network-deployment.md](docs/ops/network-deployment.md)
- Посібник проксі-агента: [docs/ops/proxy-agent-playbook.md](docs/ops/proxy-agent-playbook.md)
- Посібники з апаратного забезпечення: [docs/hardware/README.md](docs/hardware/README.md)
## Smooth Crab 🦀
ZeroClaw створений для smooth crab 🦀, швидкого та ефективного AI-асистента. Створений Argenis De La Rosa та спільнотою.
- [zeroclawlabs.ai](https://zeroclawlabs.ai)
- [@zeroclawlabs](https://x.com/zeroclawlabs)
## Підтримайте ZeroClaw
Якщо ZeroClaw допомагає вашій роботі і ви хочете підтримати подальшу розробку, ви можете зробити пожертву тут:
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=for-the-badge&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
### Особлива подяка
Щира подяка спільнотам та установам, які надихають та живлять цю відкриту роботу:
- **Harvard University** — за виховання інтелектуальної допитливості та розширення меж можливого.
- **MIT** — за підтримку відкритих знань, відкритого коду та переконання, що технології повинні бути доступними для кожного.
- **Sundai Club** — за спільноту, енергію та невпинне прагнення створювати речі, що мають значення.
- **Світ та за його межами** — кожному учаснику, мрійнику та творцю, які роблять відкритий код силою добра. Це для вас.
Ми будуємо відкрито, тому що найкращі ідеї приходять звідусіль. Якщо ви це читаєте, ви вже частина цього. Ласкаво просимо. 🦀
---
## Внесок
Новачок у ZeroClaw? Шукайте завдання з міткою [`good first issue`](https://github.com/zeroclaw-labs/zeroclaw/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) — дивіться наш [Посібник з внеску](CONTRIBUTING.md#first-time-contributors) для початку. PR з AI-допомогою вітаються!
Дивіться [CONTRIBUTING.md](CONTRIBUTING.md) та [CLA.md](docs/contributing/cla.md). Реалізуйте трейт, подайте PR:
- Посібник CI робочих процесів: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- Новий `Provider``src/providers/`
- Новий `Channel``src/channels/`
- Новий `Observer``src/observability/`
- Новий `Tool``src/tools/`
- Новий `Memory``src/memory/`
- Новий `Tunnel``src/tunnel/`
- Новий `Peripheral``src/peripherals/`
- Новий `Skill``~/.zeroclaw/workspace/skills/<name>/`
<!-- BEGIN:RECENT_CONTRIBUTORS -->
<!-- END:RECENT_CONTRIBUTORS -->
## Офіційний репозиторій та попередження про імітацію
**Це єдиний офіційний репозиторій ZeroClaw:**
> https://github.com/zeroclaw-labs/zeroclaw
Будь-який інший репозиторій, організація, домен або пакет, що претендує на назву "ZeroClaw" або натякає на зв'язок з ZeroClaw Labs, є **неавторизованим і не пов'язаним з цим проєктом**. Відомі неавторизовані форки перелічені в [TRADEMARK.md](docs/maintainers/trademark.md).
Якщо ви зіткнулися з імітацією або зловживанням торговою маркою, будь ласка, [створіть issue](https://github.com/zeroclaw-labs/zeroclaw/issues).
Внески вітаються! Будь ласка, прочитайте [Керівництво з внеску](CONTRIBUTING.md).
---
## Ліцензія
ZeroClaw має подвійну ліцензію для максимальної відкритості та захисту учасників:
Цей проєкт має подвійну ліцензію:
| Ліцензія | Варіант використання |
|---|---|
| [MIT](LICENSE-MIT) | Відкритий код, дослідження, академічне, особисте використання |
| [Apache 2.0](LICENSE-APACHE) | Патентний захист, інституційне, комерційне розгортання |
- MIT License
- Apache License, версія 2.0
Ви можете обрати будь-яку ліцензію. **Учасники автоматично надають права за обома** — дивіться [CLA.md](docs/contributing/cla.md) для повної угоди учасника.
### Торгова марка
Назва та логотип **ZeroClaw** є торговими марками ZeroClaw Labs. Ця ліцензія не надає дозволу використовувати їх для підтвердження або зв'язку. Дивіться [TRADEMARK.md](docs/maintainers/trademark.md) для дозволених та заборонених використань.
### Захист учасників
- Ви **зберігаєте авторські права** на свої внески
- **Патентне надання** (Apache 2.0) захищає вас від патентних претензій інших учасників
- Ваші внески **назавжди атрибутовані** в історії комітів та [NOTICE](NOTICE)
- Жодних прав на торгову марку не передається при внеску
Дивіться [LICENSE-APACHE](LICENSE-APACHE) та [LICENSE-MIT](LICENSE-MIT) для деталей.
---
**ZeroClaw** — Нуль накладних витрат. Нуль компромісів. Розгортайте будь-де. Замінюйте будь-що. 🦀
## Спільнота
## Учасники
- [Telegram](https://t.me/zeroclawlabs)
- [Facebook Group](https://www.facebook.com/groups/zeroclaw)
- [WeChat Group](https://zeroclawlabs.cn/group.jpg)
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors">
<img src="https://contrib.rocks/image?repo=zeroclaw-labs/zeroclaw" alt="ZeroClaw contributors" />
</a>
---
Цей список генерується з графіку учасників GitHub і оновлюється автоматично.
## Спонсори
## Історія зірок
Якщо ZeroClaw корисний для вас, будь ласка, розгляньте можливість купити нам каву:
<p align="center">
<a href="https://www.star-history.com/#zeroclaw-labs/zeroclaw&type=date&legend=top-left">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&theme=dark&legend=top-left" />
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
</picture>
</a>
</p>
[![Buy Me a Coffee](https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee)](https://buymeacoffee.com/argenistherose)
<!-- BEGIN:RECENT_CONTRIBUTORS -->
### 🌟 Recent Contributors (v0.3.1)
3 contributors shipped features, fixes, and improvements in this release cycle:
- **Argenis**
- **argenis de la rosa**
- **Claude Opus 4.6**
Thank you to everyone who opened issues, reviewed PRs, translated docs, and helped test. Every contribution matters. 🦀
<!-- END:RECENT_CONTRIBUTORS -->

View File

@ -1,32 +1,26 @@
<p align="center">
<img src="https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/docs/assets/zeroclaw-banner.png" alt="ZeroClaw" width="600" />
<img src="zeroclaw.png" alt="ZeroClaw" width="200" />
</p>
<h1 align="center">🦀 ZeroClaw — ذاتی AI اسسٹنٹ</h1>
<h1 align="center">ZeroClaw 🦀</h1>
<p align="center">
<strong>صفر اوور ہیڈ۔ صفر سمجھوتا۔ 100% Rust۔ 100% غیر جانبدار۔</strong><br>
⚡️ <strong>$10 ہارڈویئر پر <5MB RAM کے ساتھ چلتا ہے: یہ OpenClaw سے 99% کم میموری اور Mac mini سے 98% سستا ہے!</strong>
<p align="center" dir="rtl">
<strong>صفر اوور ہیڈ۔ صفر سمجھوتہ۔ 100% رسٹ۔ 100% اگنوسٹک۔</strong><br>
⚡️ <strong>$10 کے ہارڈویئر پر <5MB RAM کے ساتھ چلتا ہے: یہ OpenClaw سے 99% کم میموری اور Mac mini سے 98% سستا ہے!</strong>
</p>
<p align="center">
<a href="LICENSE-APACHE"><img src="https://img.shields.io/badge/license-MIT%20OR%20Apache%202.0-blue.svg" alt="License: MIT OR Apache-2.0" /></a>
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors"><img src="https://img.shields.io/github/contributors/zeroclaw-labs/zeroclaw?color=green" alt="Contributors" /></a>
<a href="NOTICE"><img src="https://img.shields.io/badge/contributors-27+-green.svg" alt="Contributors" /></a>
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
<a href="https://x.com/zeroclawlabs?s=21"><img src="https://img.shields.io/badge/X-%40zeroclawlabs-000000?style=flat&logo=x&logoColor=white" alt="X: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclawlabs"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
<a href="https://discord.com/invite/wDshRVqRjx"><img src="https://img.shields.io/badge/Discord-Join-5865F2?style=flat&logo=discord&logoColor=white" alt="Discord" /></a>
<a href="https://www.instagram.com/therealzeroclaw"><img src="https://img.shields.io/badge/Instagram-%40therealzeroclaw-E4405F?style=flat&logo=instagram&logoColor=white" alt="Instagram: @therealzeroclaw" /></a>
<a href="https://www.tiktok.com/@zeroclawlabs"><img src="https://img.shields.io/badge/TikTok-%40zeroclawlabs-000000?style=flat&logo=tiktok&logoColor=white" alt="TikTok: @zeroclawlabs" /></a>
<a href="https://www.rednote.com/user/profile/69b735e6000000002603927e"><img src="https://img.shields.io/badge/RedNote-Official-FF2442?style=flat" alt="RedNote" /></a>
<a href="https://www.reddit.com/r/zeroclawlabs/"><img src="https://img.shields.io/badge/Reddit-r%2Fzeroclawlabs-FF4500?style=flat&logo=reddit&logoColor=white" alt="Reddit: r/zeroclawlabs" /></a>
<a href="https://zeroclawlabs.cn/group.jpg"><img src="https://img.shields.io/badge/WeChat-Group-B7D7A8?logo=wechat&logoColor=white" alt="WeChat Group" /></a>
<a href="https://www.xiaohongshu.com/user/profile/67cbfc43000000000d008307?xsec_token=AB73VnYnGNx5y36EtnnZfGmAmS-6Wzv8WMuGpfwfkg6Yc%3D&xsec_source=pc_search"><img src="https://img.shields.io/badge/Xiaohongshu-Official-FF2442?style=flat" alt="Xiaohongshu: Official" /></a>
<a href="https://t.me/zeroclawlabs"><img src="https://img.shields.io/badge/Telegram-%40zeroclawlabs-26A5E4?style=flat&logo=telegram&logoColor=white" alt="Telegram: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclaw"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
</p>
<p align="center">
Harvard، MIT، اور Sundai.Club کمیونٹیز کے طلباء اور اراکین نے بنایا۔
</p>
<p align="center">
<p align="center" dir="rtl">
🌐 <strong>زبانیں:</strong>
<a href="README.md">🇺🇸 English</a> ·
<a href="README.zh-CN.md">🇨🇳 简体中文</a> ·
@ -61,695 +55,167 @@ Harvard، MIT، اور Sundai.Club کمیونٹیز کے طلباء اور ار
<a href="README.nb.md">🇳🇴 Norsk</a>
</p>
ZeroClaw ایک ذاتی AI اسسٹنٹ ہے جسے آپ اپنے آلات پر چلاتے ہیں۔ یہ آپ کو ان چینلز پر جواب دیتا ہے جو آپ پہلے سے استعمال کرتے ہیں (WhatsApp، Telegram، Slack، Discord، Signal، iMessage، Matrix، IRC، Email، Bluesky، Nostr، Mattermost، Nextcloud Talk، DingTalk، Lark، QQ، Reddit، LinkedIn، Twitter، MQTT، WeChat Work، اور مزید)۔ اس میں ریئل ٹائم کنٹرول کے لیے ویب ڈیش بورڈ ہے اور یہ ہارڈویئر پیری فیرلز (ESP32، STM32، Arduino، Raspberry Pi) سے جڑ سکتا ہے۔ Gateway صرف control plane ہے — پروڈکٹ اسسٹنٹ ہے۔
اگر آپ ایک ذاتی، واحد صارف اسسٹنٹ چاہتے ہیں جو مقامی، تیز، اور ہمیشہ فعال محسوس ہو، تو یہ ہے۔
<p align="center">
<a href="https://zeroclawlabs.ai">ویب سائٹ</a> ·
<a href="docs/README.md">دستاویزات</a> ·
<a href="docs/architecture.md">آرکیٹیکچر</a> ·
<a href="#فوری-آغاز">شروع کریں</a> ·
<a href="#openclaw-سے-منتقلی">OpenClaw سے منتقلی</a> ·
<a href="docs/ops/troubleshooting.md">مسائل حل کریں</a> ·
<a href="https://discord.com/invite/wDshRVqRjx">Discord</a>
</p>
> **تجویز کردہ سیٹ اپ:** اپنے ٹرمینل میں `zeroclaw onboard` چلائیں۔ ZeroClaw Onboard آپ کو gateway، workspace، چینلز، اور provider ترتیب دینے میں مرحلہ وار رہنمائی کرتا ہے۔ یہ تجویز کردہ سیٹ اپ راستہ ہے اور macOS، Linux، اور Windows (WSL2 کے ذریعے) پر کام کرتا ہے۔ نئی تنصیب؟ یہاں سے شروع کریں: [شروع کریں](#فوری-آغاز)
### سبسکرپشن تصدیق (OAuth)
- **OpenAI Codex** (ChatGPT سبسکرپشن)
- **Gemini** (Google OAuth)
- **Anthropic** (API key یا auth token)
ماڈل نوٹ: اگرچہ بہت سے providers/ماڈلز سپورٹ کیے جاتے ہیں، بہترین تجربے کے لیے اپنے دستیاب سب سے مضبوط جدید ترین ماڈل کا استعمال کریں۔ دیکھیں [Onboarding](#فوری-آغاز)۔
ماڈلز کنفیگ + CLI: [Providers حوالہ](docs/reference/api/providers-reference.md)
Auth پروفائل روٹیشن (OAuth بمقابلہ API keys) + failover: [Model failover](docs/reference/api/providers-reference.md)
## انسٹال (تجویز کردہ)
رن ٹائم: Rust stable toolchain۔ واحد بائنری، کوئی runtime dependencies نہیں۔
### Homebrew (macOS/Linuxbrew)
```bash
brew install zeroclaw
```
### ایک کلک بوٹسٹریپ
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./install.sh
```
`zeroclaw onboard` انسٹال کے بعد خود بخود چلتا ہے تاکہ آپ کا workspace اور provider ترتیب دیا جا سکے۔
## فوری آغاز (TL;DR)
مکمل ابتدائی گائیڈ (تصدیق، pairing، چینلز): [شروع کریں](docs/setup-guides/one-click-bootstrap.md)
```bash
# انسٹال + onboard
./install.sh --api-key "sk-..." --provider openrouter
# Gateway شروع کریں (webhook سرور + ویب ڈیش بورڈ)
zeroclaw gateway # ڈیفالٹ: 127.0.0.1:42617
zeroclaw gateway --port 0 # بے ترتیب پورٹ (سیکیورٹی مضبوط)
# اسسٹنٹ سے بات کریں
zeroclaw agent -m "Hello, ZeroClaw!"
# انٹرایکٹو موڈ
zeroclaw agent
# مکمل خودمختار رن ٹائم شروع کریں (gateway + چینلز + cron + hands)
zeroclaw daemon
# اسٹیٹس چیک کریں
zeroclaw status
# تشخیص چلائیں
zeroclaw doctor
```
اپ گریڈ کر رہے ہیں؟ اپ ڈیٹ کے بعد `zeroclaw doctor` چلائیں۔
### سورس سے (ترقی)
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
cargo build --release --locked
cargo install --path . --force --locked
zeroclaw onboard
```
> **Dev متبادل (بغیر global انسٹال):** کمانڈز کے آگے `cargo run --release --` لگائیں (مثال: `cargo run --release -- status`)۔
## OpenClaw سے منتقلی
ZeroClaw آپ کا OpenClaw workspace، میموری، اور کنفیگریشن درآمد کر سکتا ہے:
```bash
# دیکھیں کیا منتقل ہوگا (محفوظ، صرف پڑھنے)
zeroclaw migrate openclaw --dry-run
# منتقلی چلائیں
zeroclaw migrate openclaw
```
یہ آپ کے میموری اندراجات، workspace فائلیں، اور کنفیگریشن `~/.openclaw/` سے `~/.zeroclaw/` میں منتقل کرتا ہے۔ کنفیگ خود بخود JSON سے TOML میں تبدیل ہو جاتی ہے۔
## سیکیورٹی ڈیفالٹس (DM رسائی)
ZeroClaw حقیقی پیغام رسانی سطحوں سے جڑتا ہے۔ آنے والے DMs کو غیر بھروسہ مند ان پٹ سمجھیں۔
مکمل سیکیورٹی گائیڈ: [SECURITY.md](SECURITY.md)
تمام چینلز پر ڈیفالٹ رویہ:
- **DM pairing** (ڈیفالٹ): نامعلوم بھیجنے والوں کو ایک مختصر pairing کوڈ ملتا ہے اور بوٹ ان کے پیغام پر عمل نہیں کرتا۔
- منظوری دیں: `zeroclaw pairing approve <channel> <code>` (پھر بھیجنے والا مقامی اجازت نامہ میں شامل ہو جاتا ہے)۔
- عوامی آنے والے DMs کے لیے `config.toml` میں واضح opt-in ضروری ہے۔
- خطرناک یا غلط ترتیب شدہ DM پالیسیوں کا پتہ لگانے کے لیے `zeroclaw doctor` چلائیں۔
**خودمختاری کی سطحیں:**
| سطح | رویہ |
|-------|----------|
| `ReadOnly` | ایجنٹ مشاہدہ کر سکتا ہے لیکن عمل نہیں کر سکتا |
| `Supervised` (ڈیفالٹ) | ایجنٹ درمیانے/زیادہ خطرے والے آپریشنز کے لیے منظوری کے ساتھ عمل کرتا ہے |
| `Full` | ایجنٹ پالیسی حدود میں خودمختار طور پر عمل کرتا ہے |
**سینڈ باکسنگ پرتیں:** workspace تنہائی، path traversal بلاکنگ، کمانڈ اجازت نامے، ممنوعہ راستے (`/etc`، `/root`، `~/.ssh`)، شرح محدودیت (زیادہ سے زیادہ عمل/گھنٹہ، لاگت/دن کی حد)۔
---
<!-- BEGIN:WHATS_NEW -->
### 🚀 What's New in v0.3.1 (March 2026)
| Area | Highlights |
|---|---|
| ci | add Termux (aarch64-linux-android) release target |
<!-- END:WHATS_NEW -->
### 📢 اعلانات
## ZeroClaw کیا ہے؟
اہم نوٹسز کے لیے یہ بورڈ استعمال کریں (تبدیلیاں جو توڑ دیں، سیکیورٹی مشاورتیں، دیکھ بھال کی کھڑکیاں، اور ریلیز بلاکرز)۔
| تاریخ (UTC) | سطح | نوٹس | عمل |
| ---------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 2026-02-19 | _اہم ترین_ | ہم `openagen/zeroclaw`، `zeroclaw.org` یا `zeroclaw.net` سے **وابستہ نہیں** ہیں۔ `zeroclaw.org` اور `zeroclaw.net` ڈومینز فی الحال `openagen/zeroclaw` فورک کی طرف اشارہ کرتے ہیں، اور وہ ڈومین/ریپوزٹری ہماری سرکاری ویب سائٹ/پروجیکٹ کی نقل کر رہے ہیں۔ | ان ذرائع سے معلومات، بائنریز، فنڈ ریزنگ، یا اعلانات پر بھروسہ نہ کریں۔ صرف [یہ ریپوزٹری](https://github.com/zeroclaw-labs/zeroclaw) اور ہمارے تصدیق شدہ سوشل اکاؤنٹس استعمال کریں۔ |
| 2026-02-21 | _اہم_ | ہماری سرکاری ویب سائٹ اب فعال ہے: [zeroclawlabs.ai](https://zeroclawlabs.ai)۔ لانچ کی تیاری کے دوران آپ کے صبر کا شکریہ۔ ہم اب بھی نقل کی کوششیں دیکھ رہے ہیں، لہذا ZeroClaw نام کا دعویٰ کرنے والی کسی بھی سرمایہ کاری یا فنڈ ریزنگ سرگرمی میں **شامل نہ ہوں** جب تک کہ یہ ہمارے سرکاری چینلز کے ذریعے شائع نہ ہو۔ | [یہ ریپوزٹری](https://github.com/zeroclaw-labs/zeroclaw) کو واحد سچائی کا ذریعہ استعمال کریں۔ سرکاری اپ ڈیٹس کے لیے [X (@zeroclawlabs)](https://x.com/zeroclawlabs?s=21)، [Facebook (Group)](https://www.facebook.com/groups/zeroclawlabs)، اور [Reddit (r/zeroclawlabs)](https://www.reddit.com/r/zeroclawlabs/) فالو کریں۔ |
| 2026-02-19 | _اہم_ | Anthropic نے 2026-02-19 کو تصدیق اور اسناد کے استعمال کی شرائط اپ ڈیٹ کیں۔ Claude Code OAuth ٹوکنز (Free، Pro، Max) خصوصی طور پر Claude Code اور Claude.ai کے لیے ہیں؛ Claude Free/Pro/Max سے OAuth ٹوکنز کسی اور پروڈکٹ، ٹول، یا سروس (بشمول Agent SDK) میں استعمال کرنا اجازت یافتہ نہیں ہے اور صارف سروس کی شرائط کی خلاف ورزی ہو سکتی ہے۔ | براہ کرم ممکنہ نقصان سے بچنے کے لیے عارضی طور پر Claude Code OAuth انٹیگریشنز سے گریز کریں۔ اصل شق: [Authentication and Credential Use](https://code.claude.com/docs/en/legal-and-compliance#authentication-and-credential-use)۔ |
## خصوصیات
- **ڈیفالٹ طور پر ہلکا رن ٹائم** — عام CLI اور اسٹیٹس ورک فلوز ریلیز بلڈز پر چند میگا بائٹ میموری میں چلتے ہیں۔
- **لاگت سے مؤثر تعیناتی** — $10 بورڈز اور چھوٹے کلاؤڈ انسٹینسز کے لیے ڈیزائن کیا گیا، کوئی بھاری runtime dependencies نہیں۔
- **تیز کولڈ اسٹارٹ** — واحد بائنری Rust رن ٹائم کمانڈ اور daemon اسٹارٹ اپ کو تقریباً فوری رکھتا ہے۔
- **پورٹیبل آرکیٹیکچر** — ARM، x86، اور RISC-V پر ایک بائنری، قابل تبادلہ providers/چینلز/ٹولز کے ساتھ۔
- **لوکل فرسٹ Gateway** — سیشنز، چینلز، ٹولز، cron، SOPs، اور ایونٹس کے لیے واحد control plane۔
- **ملٹی چینل ان باکس** — WhatsApp، Telegram، Slack، Discord، Signal، iMessage، Matrix، IRC، Email، Bluesky، Nostr، Mattermost، Nextcloud Talk، DingTalk، Lark، QQ، Reddit، LinkedIn، Twitter، MQTT، WeChat Work، WebSocket، اور مزید۔
- **ملٹی ایجنٹ آرکیسٹریشن (Hands)** — خودمختار ایجنٹ جھنڈ جو شیڈول پر چلتے ہیں اور وقت کے ساتھ ذہین ہوتے ہیں۔
- **سٹینڈرڈ آپریٹنگ پروسیجرز (SOPs)** — MQTT، webhook، cron، اور پیری فیرل ٹرگرز کے ساتھ ایونٹ پر مبنی ورک فلو آٹومیشن۔
- **ویب ڈیش بورڈ** — ریئل ٹائم چیٹ، میموری براؤزر، کنفیگ ایڈیٹر، cron مینیجر، اور ٹول انسپیکٹر کے ساتھ React 19 + Vite ویب UI۔
- **ہارڈویئر پیری فیرلز**`Peripheral` trait کے ذریعے ESP32، STM32 Nucleo، Arduino، Raspberry Pi GPIO۔
- **فرسٹ کلاس ٹولز** — shell، file I/O، browser، git، web fetch/search، MCP، Jira، Notion، Google Workspace، اور 70+ مزید۔
- **لائف سائیکل ہکس** — ہر مرحلے پر LLM کالز، ٹول ایگزیکیوشنز، اور پیغامات کو روکیں اور ترمیم کریں۔
- **اسکلز پلیٹ فارم** — بلٹ ان، کمیونٹی، اور workspace اسکلز سیکیورٹی آڈٹنگ کے ساتھ۔
- **ٹنل سپورٹ** — ریموٹ رسائی کے لیے Cloudflare، Tailscale، ngrok، OpenVPN، اور کسٹم ٹنلز۔
### ٹیمیں ZeroClaw کیوں چنتی ہیں
- **ڈیفالٹ طور پر ہلکا:** چھوٹی Rust بائنری، تیز اسٹارٹ اپ، کم میموری فٹ پرنٹ۔
- **ڈیزائن سے محفوظ:** pairing، سخت سینڈ باکسنگ، واضح اجازت نامے، workspace سکوپنگ۔
- **مکمل طور پر قابل تبادلہ:** بنیادی نظام traits ہیں (providers، چینلز، ٹولز، میموری، tunnels)۔
- **کوئی lock-in نہیں:** OpenAI ہم آہنگ provider سپورٹ + پلگ ایبل کسٹم endpoints۔
## بینچ مارک سنیپ شاٹ (ZeroClaw بمقابلہ OpenClaw، قابل تکرار)
مقامی مشین فوری بینچ مارک (macOS arm64، فروری 2026) 0.8GHz ایج ہارڈویئر کے لیے نارملائز۔
| | OpenClaw | NanoBot | PicoClaw | ZeroClaw 🦀 |
| ------------------------- | ------------- | -------------- | --------------- | -------------------- |
| **زبان** | TypeScript | Python | Go | **Rust** |
| **RAM** | > 1GB | > 100MB | < 10MB | **< 5MB** |
| **اسٹارٹ اپ (0.8GHz کور)** | > 500s | > 30s | < 1s | **< 10ms** |
| **بائنری سائز** | ~28MB (dist) | N/A (Scripts) | ~8MB | **~8.8 MB** |
| **لاگت** | Mac Mini $599 | Linux SBC ~$50 | Linux Board $10 | **کوئی بھی ہارڈویئر $10** |
> نوٹ: ZeroClaw نتائج `/usr/bin/time -l` استعمال کرتے ہوئے ریلیز بلڈز پر ماپے گئے ہیں۔ OpenClaw کو Node.js رن ٹائم کی ضرورت ہے (عام طور پر ~390MB اضافی میموری اوور ہیڈ)، جبکہ NanoBot کو Python رن ٹائم کی ضرورت ہے۔ PicoClaw اور ZeroClaw سٹیٹک بائنریز ہیں۔ اوپر RAM اعداد رن ٹائم میموری ہیں؛ بلڈ ٹائم کمپائلیشن ضروریات زیادہ ہیں۔
<p align="center">
<img src="docs/assets/zeroclaw-comparison.jpeg" alt="ZeroClaw vs OpenClaw Comparison" width="800" />
<p align="center" dir="rtl">
ZeroClaw ایک ہلکا، قابل تبدیلی اور توسیع پذیر AI اسسٹنٹ انفراسٹرکچر ہے جو رسٹ میں بنایا گیا ہے۔ یہ مختلف LLM فراہم کنندگان (Anthropic, OpenAI, Google, Ollama, وغیرہ) کو ایک متحد انٹرفیس کے ذریعے جوڑتا ہے اور متعدد چینلز (Telegram, Matrix, CLI, وغیرہ) کی حمایت کرتا ہے۔
</p>
### قابل تکرار مقامی پیمائش
### اہم خصوصیات
<p align="center" dir="rtl">
- **🦀 رسٹ میں لکھا گیا**: اعلیٰ کارکردگی، میموری سیورٹی، اور بغیر لاگت کے ایبسٹریکشن
- **🔌 فراہم کنندہ-اگنوسٹک**: OpenAI, Anthropic, Google Gemini, Ollama, اور دیگر کی حمایت
- **📱 ملٹی چینل**: Telegram, Matrix (E2EE کے ساتھ), CLI, اور دیگر
- **🧠 پلگ ایبل میموری**: SQLite اور Markdown بیک اینڈ
- **🛠️ قابل توسیع ٹولز**: آسانی سے کسٹم ٹولز شامل کریں
- **🔒 سیورٹی فرسٹ**: ریورس پراکسی، پرائیویسی فرسٹ ڈیزائن
</p>
---
## فوری شروعات
### ضروریات
<p align="center" dir="rtl">
- Rust 1.70+
- ایک LLM فراہم کنندہ API کی (Anthropic, OpenAI, وغیرہ)
</p>
### انسٹالیشن
```bash
cargo build --release
ls -lh target/release/zeroclaw
# ریپوزٹری کلون کریں
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
/usr/bin/time -l target/release/zeroclaw --help
/usr/bin/time -l target/release/zeroclaw status
# بلڈ کریں
cargo build --release
# چلائیں
cargo run --release
```
## ہم نے اب تک جو کچھ بنایا
### Docker کے ساتھ
### بنیادی پلیٹ فارم
- سیشنز، presence، کنفیگ، cron، webhooks، ویب ڈیش بورڈ، اور pairing کے ساتھ Gateway HTTP/WS/SSE control plane۔
- CLI سطح: `gateway`، `agent`، `onboard`، `doctor`، `status`، `service`، `migrate`، `auth`، `cron`، `channel`، `skills`۔
- ٹول dispatch، prompt تعمیر، پیغام درجہ بندی، اور میموری لوڈنگ کے ساتھ ایجنٹ آرکیسٹریشن لوپ۔
- سیکیورٹی پالیسی نفاذ، خودمختاری کی سطحوں، اور منظوری گیٹنگ کے ساتھ سیشن ماڈل۔
- 20+ LLM بیک اینڈز میں failover، retry، اور model routing کے ساتھ لچکدار provider ریپر۔
### چینلز
چینلز: WhatsApp (native)، Telegram، Slack، Discord، Signal، iMessage، Matrix، IRC، Email، Bluesky، DingTalk، Lark، Mattermost، Nextcloud Talk، Nostr، QQ، Reddit، LinkedIn، Twitter، MQTT، WeChat Work، WATI، Mochat، Linq، Notion، WebSocket، ClawdTalk۔
Feature-gated: Matrix (`channel-matrix`)، Lark (`channel-lark`)، Nostr (`channel-nostr`)۔
### ویب ڈیش بورڈ
Gateway سے براہ راست فراہم کردہ React 19 + Vite 6 + Tailwind CSS 4 ویب ڈیش بورڈ:
- **Dashboard** — سسٹم جائزہ، صحت کی حالت، اپ ٹائم، لاگت ٹریکنگ
- **Agent Chat** — ایجنٹ کے ساتھ انٹرایکٹو چیٹ
- **Memory** — میموری اندراجات براؤز اور منظم کریں
- **Config** — کنفیگریشن دیکھیں اور ترمیم کریں
- **Cron** — شیڈولڈ ٹاسکس کا انتظام کریں
- **Tools** — دستیاب ٹولز براؤز کریں
- **Logs** — ایجنٹ سرگرمی لاگز دیکھیں
- **Cost** — ٹوکن استعمال اور لاگت ٹریکنگ
- **Doctor** — سسٹم صحت تشخیص
- **Integrations** — انٹیگریشن اسٹیٹس اور سیٹ اپ
- **Pairing** — ڈیوائس pairing مینجمنٹ
### فرم ویئر اہداف
| ہدف | پلیٹ فارم | مقصد |
|--------|----------|---------|
| ESP32 | Espressif ESP32 | وائرلیس پیری فیرل ایجنٹ |
| ESP32-UI | ESP32 + Display | بصری انٹرفیس کے ساتھ ایجنٹ |
| STM32 Nucleo | STM32 (ARM Cortex-M) | صنعتی پیری فیرل |
| Arduino | Arduino | بنیادی سینسر/ایکچویٹر بریج |
| Uno Q Bridge | Arduino Uno | ایجنٹ کے لیے سیریل بریج |
### ٹولز + آٹومیشن
- **بنیادی:** shell، file read/write/edit، git آپریشنز، glob search، content search
- **ویب:** browser control، web fetch، web search، screenshot، image info، PDF read
- **انٹیگریشنز:** Jira، Notion، Google Workspace، Microsoft 365، LinkedIn، Composio، Pushover
- **MCP:** Model Context Protocol tool wrapper + deferred tool sets
- **شیڈولنگ:** cron add/remove/update/run، schedule tool
- **میموری:** recall، store، forget، knowledge، project intel
- **ایڈوانسڈ:** delegate (ایجنٹ سے ایجنٹ)، swarm، model switch/routing، security ops، cloud ops
- **ہارڈویئر:** board info، memory map، memory read (feature-gated)
### رن ٹائم + حفاظت
- **خودمختاری کی سطحیں:** ReadOnly، Supervised (ڈیفالٹ)، Full۔
- **سینڈ باکسنگ:** workspace تنہائی، path traversal بلاکنگ، کمانڈ اجازت نامے، ممنوعہ راستے، Landlock (Linux)، Bubblewrap۔
- **شرح محدودیت:** فی گھنٹہ زیادہ سے زیادہ عمل، فی دن زیادہ سے زیادہ لاگت (قابل ترتیب)۔
- **منظوری گیٹنگ:** درمیانے/زیادہ خطرے والے آپریشنز کے لیے انٹرایکٹو منظوری۔
- **E-stop:** ایمرجنسی شٹ ڈاؤن صلاحیت۔
- **129+ سیکیورٹی ٹیسٹس** خودکار CI میں۔
### Ops + پیکیجنگ
- Gateway سے براہ راست فراہم کردہ ویب ڈیش بورڈ۔
- ٹنل سپورٹ: Cloudflare، Tailscale، ngrok، OpenVPN، کسٹم کمانڈ۔
- کنٹینرائزڈ ایگزیکیوشن کے لیے Docker رن ٹائم اڈاپٹر۔
- CI/CD: beta (push پر خودکار) → stable (دستی dispatch) → Docker، crates.io، Scoop، AUR، Homebrew، tweet۔
- Linux (x86_64، aarch64، armv7)، macOS (x86_64، aarch64)، Windows (x86_64) کے لیے پری بلٹ بائنریز۔
```bash
docker run -d \
--name zeroclaw \
-e ANTHROPIC_API_KEY=your_key \
-v zeroclaw-data:/app/data \
zeroclaw/zeroclaw:latest
```
---
## کنفیگریشن
کم از کم `~/.zeroclaw/config.toml`:
<p align="center" dir="rtl">
ZeroClaw ایک YAML کنفیگریشن فائل استعمال کرتا ہے۔ ڈیفالٹ طور پر، یہ `config.yaml` تلاش کرتا ہے۔
</p>
```toml
default_provider = "anthropic"
api_key = "sk-ant-..."
```yaml
# ڈیفالٹ فراہم کنندہ
provider: anthropic
# فراہم کنندگان کی کنفیگریشن
providers:
anthropic:
api_key: ${ANTHROPIC_API_KEY}
model: claude-3-5-sonnet-20241022
openai:
api_key: ${OPENAI_API_KEY}
model: gpt-4o
# میموری کنفیگریشن
memory:
backend: sqlite
path: data/memory.db
# چینلز کی کنفیگریشن
channels:
telegram:
token: ${TELEGRAM_BOT_TOKEN}
```
مکمل کنفیگریشن حوالہ: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md)۔
### چینل کنفیگریشن
**Telegram:**
```toml
[channels.telegram]
bot_token = "123456:ABC-DEF..."
```
**Discord:**
```toml
[channels.discord]
token = "your-bot-token"
```
**Slack:**
```toml
[channels.slack]
bot_token = "xoxb-..."
app_token = "xapp-..."
```
**WhatsApp:**
```toml
[channels.whatsapp]
enabled = true
```
**Matrix:**
```toml
[channels.matrix]
homeserver_url = "https://matrix.org"
username = "@bot:matrix.org"
password = "..."
```
**Signal:**
```toml
[channels.signal]
phone_number = "+1234567890"
```
### ٹنل کنفیگریشن
```toml
[tunnel]
kind = "cloudflare" # یا "tailscale", "ngrok", "openvpn", "custom", "none"
```
تفصیلات: [چینل حوالہ](docs/reference/api/channels-reference.md) · [کنفیگ حوالہ](docs/reference/api/config-reference.md)
### رن ٹائم سپورٹ (موجودہ)
- **`native`** (ڈیفالٹ) — براہ راست process ایگزیکیوشن، تیز ترین راستہ، بھروسہ مند ماحول کے لیے مثالی۔
- **`docker`** — مکمل کنٹینر تنہائی، نافذ سیکیورٹی پالیسیاں، Docker ضروری ہے۔
سخت سینڈ باکسنگ یا نیٹ ورک تنہائی کے لیے `runtime.kind = "docker"` سیٹ کریں۔
## سبسکرپشن تصدیق (OpenAI Codex / Claude Code / Gemini)
ZeroClaw سبسکرپشن نیٹو auth پروفائلز سپورٹ کرتا ہے (ملٹی اکاؤنٹ، آرام پر خفیہ)۔
- اسٹور فائل: `~/.zeroclaw/auth-profiles.json`
- خفیہ کاری کلید: `~/.zeroclaw/.secret_key`
- پروفائل id فارمیٹ: `<provider>:<profile_name>` (مثال: `openai-codex:work`)
```bash
# OpenAI Codex OAuth (ChatGPT سبسکرپشن)
zeroclaw auth login --provider openai-codex --device-code
# Gemini OAuth
zeroclaw auth login --provider gemini --profile default
# Anthropic setup-token
zeroclaw auth paste-token --provider anthropic --profile default --auth-kind authorization
# چیک / ریفریش / پروفائل تبدیل کریں
zeroclaw auth status
zeroclaw auth refresh --provider openai-codex --profile default
zeroclaw auth use --provider openai-codex --profile work
# سبسکرپشن auth کے ساتھ ایجنٹ چلائیں
zeroclaw agent --provider openai-codex -m "hello"
zeroclaw agent --provider anthropic -m "hello"
```
## ایجنٹ workspace + اسکلز
Workspace روٹ: `~/.zeroclaw/workspace/` (config کے ذریعے قابل ترتیب)۔
انجیکٹ کردہ prompt فائلیں:
- `IDENTITY.md` — ایجنٹ شخصیت اور کردار
- `USER.md` — صارف سیاق و سباق اور ترجیحات
- `MEMORY.md` — طویل مدتی حقائق اور اسباق
- `AGENTS.md` — سیشن کنونشنز اور آغاز کے قواعد
- `SOUL.md` — بنیادی شناخت اور آپریٹنگ اصول
اسکلز: `~/.zeroclaw/workspace/skills/<skill>/SKILL.md` یا `SKILL.toml`۔
```bash
# انسٹال شدہ اسکلز کی فہرست
zeroclaw skills list
# git سے انسٹال
zeroclaw skills install https://github.com/user/my-skill.git
# انسٹال سے پہلے سیکیورٹی آڈٹ
zeroclaw skills audit https://github.com/user/my-skill.git
# اسکل ہٹائیں
zeroclaw skills remove my-skill
```
## CLI کمانڈز
```bash
# Workspace مینجمنٹ
zeroclaw onboard # رہنمائی شدہ سیٹ اپ وزرڈ
zeroclaw status # daemon/ایجنٹ اسٹیٹس دکھائیں
zeroclaw doctor # سسٹم تشخیص چلائیں
# Gateway + daemon
zeroclaw gateway # Gateway سرور شروع کریں (127.0.0.1:42617)
zeroclaw daemon # مکمل خودمختار رن ٹائم شروع کریں
# ایجنٹ
zeroclaw agent # انٹرایکٹو چیٹ موڈ
zeroclaw agent -m "message" # واحد پیغام موڈ
# سروس مینجمنٹ
zeroclaw service install # OS سروس کے طور پر انسٹال کریں (launchd/systemd)
zeroclaw service start|stop|restart|status
# چینلز
zeroclaw channel list # ترتیب شدہ چینلز کی فہرست
zeroclaw channel doctor # چینل صحت چیک کریں
zeroclaw channel bind-telegram 123456789
# Cron + شیڈولنگ
zeroclaw cron list # شیڈولڈ جابز کی فہرست
zeroclaw cron add "*/5 * * * *" --prompt "Check system health"
zeroclaw cron remove <id>
# میموری
zeroclaw memory list # میموری اندراجات کی فہرست
zeroclaw memory get <key> # میموری حاصل کریں
zeroclaw memory stats # میموری اعداد و شمار
# Auth پروفائلز
zeroclaw auth login --provider <name>
zeroclaw auth status
zeroclaw auth use --provider <name> --profile <profile>
# ہارڈویئر پیری فیرلز
zeroclaw hardware discover # منسلک آلات اسکین کریں
zeroclaw peripheral list # منسلک پیری فیرلز کی فہرست
zeroclaw peripheral flash # آلے پر فرم ویئر فلیش کریں
# منتقلی
zeroclaw migrate openclaw --dry-run
zeroclaw migrate openclaw
# شیل تکمیلات
source <(zeroclaw completions bash)
zeroclaw completions zsh > ~/.zfunc/_zeroclaw
```
مکمل کمانڈز حوالہ: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
<!-- markdownlint-disable MD001 MD024 -->
## شرائط
<details>
<summary><strong>Windows</strong></summary>
#### ضروری
1. **Visual Studio Build Tools** (MSVC لنکر اور Windows SDK فراہم کرتا ہے):
```powershell
winget install Microsoft.VisualStudio.2022.BuildTools
```
انسٹالیشن کے دوران (یا Visual Studio Installer کے ذریعے)، **"Desktop development with C++"** ورک لوڈ منتخب کریں۔
2. **Rust toolchain:**
```powershell
winget install Rustlang.Rustup
```
انسٹالیشن کے بعد، نیا ٹرمینل کھولیں اور `rustup default stable` چلائیں تاکہ مستحکم toolchain فعال ہو۔
3. **تصدیق** کریں دونوں کام کر رہے ہیں:
```powershell
rustc --version
cargo --version
```
#### اختیاری
- **Docker Desktop** — صرف اس صورت میں ضروری ہے جب [Docker sandboxed runtime](#رن-ٹائم-سپورٹ-موجودہ) (`runtime.kind = "docker"`) استعمال کر رہے ہوں۔ `winget install Docker.DockerDesktop` سے انسٹال کریں۔
</details>
<details>
<summary><strong>Linux / macOS</strong></summary>
#### ضروری
1. **Build essentials:**
- **Linux (Debian/Ubuntu):** `sudo apt install build-essential pkg-config`
- **Linux (Fedora/RHEL):** `sudo dnf group install development-tools && sudo dnf install pkg-config`
- **macOS:** Xcode Command Line Tools انسٹال کریں: `xcode-select --install`
2. **Rust toolchain:**
```bash
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
```
تفصیلات کے لیے [rustup.rs](https://rustup.rs) دیکھیں۔
3. **تصدیق** کریں دونوں کام کر رہے ہیں:
```bash
rustc --version
cargo --version
```
#### ایک لائن انسٹالر
یا اوپر کے مراحل چھوڑیں اور سب کچھ (سسٹم dependencies، Rust، ZeroClaw) ایک کمانڈ میں انسٹال کریں:
```bash
curl -LsSf https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/install.sh | bash
```
#### کمپائلیشن وسائل کی ضروریات
سورس سے بنانا نتیجے میں آنے والی بائنری چلانے سے زیادہ وسائل کی ضرورت ہے:
| وسیلہ | کم از کم | تجویز کردہ |
| -------------- | ------- | ----------- |
| **RAM + swap** | 2 GB | 4 GB+ |
| **خالی ڈسک** | 6 GB | 10 GB+ |
اگر آپ کا ہوسٹ کم از کم سے نیچے ہے، پری بلٹ بائنریز استعمال کریں:
```bash
./install.sh --prefer-prebuilt
```
بغیر سورس فال بیک صرف بائنری انسٹال کے لیے:
```bash
./install.sh --prebuilt-only
```
#### اختیاری
- **Docker** — صرف اس صورت میں ضروری ہے جب [Docker sandboxed runtime](#رن-ٹائم-سپورٹ-موجودہ) (`runtime.kind = "docker"`) استعمال کر رہے ہوں۔ اپنے پیکیج مینیجر یا [docker.com](https://docs.docker.com/engine/install/) سے انسٹال کریں۔
> **نوٹ:** ڈیفالٹ `cargo build --release` چوٹی کمپائل دباؤ کم کرنے کے لیے `codegen-units=1` استعمال کرتا ہے۔ طاقتور مشینوں پر تیز بلڈز کے لیے، `cargo build --profile release-fast` استعمال کریں۔
</details>
<!-- markdownlint-enable MD001 MD024 -->
### پری بلٹ بائنریز
ریلیز اثاثے شائع کیے جاتے ہیں:
- Linux: `x86_64`، `aarch64`، `armv7`
- macOS: `x86_64`، `aarch64`
- Windows: `x86_64`
تازہ ترین اثاثے یہاں سے ڈاؤن لوڈ کریں:
<https://github.com/zeroclaw-labs/zeroclaw/releases/latest>
---
## دستاویزات
جب آپ onboarding فلو سے گزر چکے ہوں اور گہرا حوالہ چاہتے ہوں تو یہ استعمال کریں۔
<p align="center" dir="rtl">
تفصیلی دستاویزات کے لیے، دیکھیں:
</p>
- نیویگیشن اور "کیا کہاں ہے" کے لیے [دستاویزات فہرست](docs/README.md) سے شروع کریں۔
- مکمل سسٹم ماڈل کے لیے [آرکیٹیکچر جائزہ](docs/architecture.md) پڑھیں۔
- جب آپ کو ہر key اور مثال چاہیے تو [کنفیگریشن حوالہ](docs/reference/api/config-reference.md) استعمال کریں۔
- [آپریشنل رن بک](docs/ops/operations-runbook.md) کے ساتھ Gateway کتاب کے مطابق چلائیں۔
- رہنمائی شدہ سیٹ اپ کے لیے [ZeroClaw Onboard](#فوری-آغاز) فالو کریں۔
- عام ناکامیوں کو [مسائل حل کرنے کی گائیڈ](docs/ops/troubleshooting.md) سے ڈیبگ کریں۔
- کچھ بھی ظاہر کرنے سے پہلے [سیکیورٹی رہنمائی](docs/security/README.md) کا جائزہ لیں۔
- [دستاویزات ہب](docs/README.md)
- [کمانڈز ریفرنس](docs/commands-reference.md)
- [فراہم کنندگان ریفرنس](docs/providers-reference.md)
- [چینلز ریفرنس](docs/channels-reference.md)
- [کنفیگریشن ریفرنس](docs/config-reference.md)
### حوالہ جاتی دستاویزات
- دستاویزات مرکز: [docs/README.md](docs/README.md)
- متحد دستاویزات TOC: [docs/SUMMARY.md](docs/SUMMARY.md)
- کمانڈز حوالہ: [docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
- کنفیگ حوالہ: [docs/reference/api/config-reference.md](docs/reference/api/config-reference.md)
- Providers حوالہ: [docs/reference/api/providers-reference.md](docs/reference/api/providers-reference.md)
- چینلز حوالہ: [docs/reference/api/channels-reference.md](docs/reference/api/channels-reference.md)
- آپریشنل رن بک: [docs/ops/operations-runbook.md](docs/ops/operations-runbook.md)
- مسائل حل: [docs/ops/troubleshooting.md](docs/ops/troubleshooting.md)
### تعاون دستاویزات
- شراکت گائیڈ: [CONTRIBUTING.md](CONTRIBUTING.md)
- PR ورک فلو پالیسی: [docs/contributing/pr-workflow.md](docs/contributing/pr-workflow.md)
- CI ورک فلو گائیڈ: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- جائزہ کار پلے بک: [docs/contributing/reviewer-playbook.md](docs/contributing/reviewer-playbook.md)
- سیکیورٹی افشاء پالیسی: [SECURITY.md](SECURITY.md)
- دستاویزات ٹیمپلیٹ: [docs/contributing/doc-template.md](docs/contributing/doc-template.md)
### تعیناتی + آپریشنز
- نیٹ ورک تعیناتی گائیڈ: [docs/ops/network-deployment.md](docs/ops/network-deployment.md)
- پراکسی ایجنٹ پلے بک: [docs/ops/proxy-agent-playbook.md](docs/ops/proxy-agent-playbook.md)
- ہارڈویئر گائیڈز: [docs/hardware/README.md](docs/hardware/README.md)
## Smooth Crab 🦀
ZeroClaw smooth crab 🦀 کے لیے بنایا گیا تھا، ایک تیز اور مؤثر AI اسسٹنٹ۔ Argenis De La Rosa اور کمیونٹی نے بنایا۔
- [zeroclawlabs.ai](https://zeroclawlabs.ai)
- [@zeroclawlabs](https://x.com/zeroclawlabs)
## ZeroClaw کی حمایت کریں
اگر ZeroClaw آپ کے کام میں مدد کرتا ہے اور آپ جاری ترقی کی حمایت کرنا چاہتے ہیں، تو آپ یہاں عطیہ دے سکتے ہیں:
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=for-the-badge&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
### 🙏 خصوصی شکریہ
ان کمیونٹیز اور اداروں کا دلی شکریہ جو اس اوپن سورس کام کو متاثر اور توانائی دیتے ہیں:
- **Harvard University** — فکری تجسس کو فروغ دینے اور ممکنات کی حدود کو آگے بڑھانے کے لیے۔
- **MIT** — کھلے علم، اوپن سورس، اور اس یقین کی حمایت کے لیے کہ ٹیکنالوجی سب کے لیے قابل رسائی ہونی چاہیے۔
- **Sundai Club** — کمیونٹی، توانائی، اور اہم چیزیں بنانے کی لگاتار کوشش کے لیے۔
- **دنیا اور آگے** 🌍✨ — ہر اس شراکت دار، خواب دیکھنے والے، اور تعمیر کرنے والے کے لیے جو اوپن سورس کو اچھائی کی قوت بنا رہا ہے۔ یہ آپ کے لیے ہے۔
ہم کھلے میں بنا رہے ہیں کیونکہ بہترین آئیڈیاز ہر جگہ سے آتے ہیں۔ اگر آپ یہ پڑھ رہے ہیں، تو آپ اس کا حصہ ہیں۔ خوش آمدید۔ 🦀❤️
---
## شراکت
ZeroClaw میں نئے ہیں؟ [`good first issue`](https://github.com/zeroclaw-labs/zeroclaw/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) لیبل والے issues تلاش کریں — شروع کرنے کے طریقے کے لیے [شراکت گائیڈ](CONTRIBUTING.md#first-time-contributors) دیکھیں۔ AI/vibe-coded PRs کا خیرمقدم ہے! 🤖
[CONTRIBUTING.md](CONTRIBUTING.md) اور [CLA.md](docs/contributing/cla.md) دیکھیں۔ ایک trait نافذ کریں، PR جمع کرائیں:
- CI ورک فلو گائیڈ: [docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- نیا `Provider``src/providers/`
- نیا `Channel``src/channels/`
- نیا `Observer``src/observability/`
- نیا `Tool``src/tools/`
- نیا `Memory``src/memory/`
- نیا `Tunnel``src/tunnel/`
- نیا `Peripheral``src/peripherals/`
- نیا `Skill``~/.zeroclaw/workspace/skills/<name>/`
<!-- BEGIN:RECENT_CONTRIBUTORS -->
<!-- END:RECENT_CONTRIBUTORS -->
## ⚠️ سرکاری ریپوزٹری اور نقل کی وارننگ
**یہ ZeroClaw کی واحد سرکاری ریپوزٹری ہے:**
> https://github.com/zeroclaw-labs/zeroclaw
کوئی بھی دوسری ریپوزٹری، تنظیم، ڈومین، یا پیکیج جو "ZeroClaw" ہونے کا دعویٰ کرے یا ZeroClaw Labs سے وابستگی کا اشارہ کرے **غیر مجاز ہے اور اس پروجیکٹ سے وابستہ نہیں ہے**۔ معلوم غیر مجاز فورکس [TRADEMARK.md](docs/maintainers/trademark.md) میں درج ہوں گے۔
اگر آپ کو نقل یا ٹریڈ مارک کا غلط استعمال ملے، براہ کرم [issue کھولیں](https://github.com/zeroclaw-labs/zeroclaw/issues)۔
<p align="center" dir="rtl">
شراکت کا خیرمقدم ہے! براہ کرم [شراکت گائیڈ](CONTRIBUTING.md) پڑھیں۔
</p>
---
## لائسنس
ZeroClaw زیادہ سے زیادہ کشادگی اور شراکت دار تحفظ کے لیے دوہری لائسنس یافتہ ہے:
<p align="center" dir="rtl">
یہ پروجیکٹ ڈول لائسنس یافتہ ہے:
</p>
| لائسنس | استعمال کا معاملہ |
|---|---|
| [MIT](LICENSE-MIT) | اوپن سورس، تحقیق، تعلیمی، ذاتی استعمال |
| [Apache 2.0](LICENSE-APACHE) | پیٹنٹ تحفظ، ادارہ جاتی، تجارتی تعیناتی |
- MIT License
- Apache License, ورژن 2.0
آپ کوئی بھی لائسنس منتخب کر سکتے ہیں۔ **شراکت دار خود بخود دونوں کے تحت حقوق دیتے ہیں** — مکمل شراکت دار معاہدے کے لیے [CLA.md](docs/contributing/cla.md) دیکھیں۔
### ٹریڈ مارک
**ZeroClaw** نام اور لوگو ZeroClaw Labs کے ٹریڈ مارکس ہیں۔ یہ لائسنس انہیں توثیق یا وابستگی کا اشارہ دینے کے لیے استعمال کرنے کی اجازت نہیں دیتا۔ مجاز اور ممنوع استعمال کے لیے [TRADEMARK.md](docs/maintainers/trademark.md) دیکھیں۔
### شراکت دار تحفظات
- آپ اپنی شراکتوں کا **کاپی رائٹ برقرار رکھتے ہیں**
- **پیٹنٹ گرانٹ** (Apache 2.0) آپ کو دوسرے شراکت داروں کے پیٹنٹ دعووں سے بچاتی ہے
- آپ کی شراکتیں commit تاریخ اور [NOTICE](NOTICE) میں **مستقل طور پر منسوب** ہیں
- شراکت کرنے سے کوئی ٹریڈ مارک حقوق منتقل نہیں ہوتے
<p align="center" dir="rtl">
تفصیلات کے لیے [LICENSE-APACHE](LICENSE-APACHE) اور [LICENSE-MIT](LICENSE-MIT) دیکھیں۔
</p>
---
**ZeroClaw** — صفر اوور ہیڈ۔ صفر سمجھوتا۔ کہیں بھی تعینات کریں۔ کچھ بھی تبدیل کریں۔ 🦀
## کمیونٹی
## شراکت دار
- [Telegram](https://t.me/zeroclawlabs)
- [Facebook Group](https://www.facebook.com/groups/zeroclaw)
- [WeChat Group](https://zeroclawlabs.cn/group.jpg)
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors">
<img src="https://contrib.rocks/image?repo=zeroclaw-labs/zeroclaw" alt="ZeroClaw contributors" />
</a>
---
یہ فہرست GitHub شراکت داروں کے گراف سے بنائی گئی ہے اور خود بخود اپ ڈیٹ ہوتی ہے۔
## سپانسرز
## ستاروں کی تاریخ
<p align="center">
<a href="https://www.star-history.com/#zeroclaw-labs/zeroclaw&type=date&legend=top-left">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&theme=dark&legend=top-left" />
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
</picture>
</a>
<p align="center" dir="rtl">
اگر ZeroClaw آپ کے لیے مفید ہے، تو براہ کرم ہمیں کافی خریدنے پر غور کریں:
</p>
[![Buy Me a Coffee](https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee)](https://buymeacoffee.com/argenistherose)
<!-- BEGIN:RECENT_CONTRIBUTORS -->
### 🌟 Recent Contributors (v0.3.1)
3 contributors shipped features, fixes, and improvements in this release cycle:
- **Argenis**
- **argenis de la rosa**
- **Claude Opus 4.6**
Thank you to everyone who opened issues, reviewed PRs, translated docs, and helped test. Every contribution matters. 🦀
<!-- END:RECENT_CONTRIBUTORS -->

File diff suppressed because it is too large Load Diff

View File

@ -1,33 +1,24 @@
<p align="center">
<img src="https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/docs/assets/zeroclaw-banner.png" alt="ZeroClaw" width="600" />
<img src="docs/assets/zeroclaw.png" alt="ZeroClaw" width="200" />
</p>
<h1 align="center">🦀 ZeroClaw — 个人AI助手</h1>
<h1 align="center">ZeroClaw 🦀(简体中文)</h1>
<p align="center">
<strong>零开销。零妥协。100% Rust。100% 无绑定。</strong><br>
⚡️ <strong>在10美元硬件上运行RAM不到5MB比OpenClaw少99%内存比Mac mini便宜98%</strong>
<strong>零开销、零妥协;随处部署、万物可换。</strong>
</p>
<p align="center">
<a href="LICENSE-APACHE"><img src="https://img.shields.io/badge/license-MIT%20OR%20Apache%202.0-blue.svg" alt="License: MIT OR Apache-2.0" /></a>
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors"><img src="https://img.shields.io/github/contributors/zeroclaw-labs/zeroclaw?color=green" alt="Contributors" /></a>
<a href="NOTICE"><img src="https://img.shields.io/badge/contributors-27+-green.svg" alt="Contributors" /></a>
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=flat&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
<a href="https://x.com/zeroclawlabs?s=21"><img src="https://img.shields.io/badge/X-%40zeroclawlabs-000000?style=flat&logo=x&logoColor=white" alt="X: @zeroclawlabs" /></a>
<a href="https://www.facebook.com/groups/zeroclawlabs"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
<a href="https://discord.com/invite/wDshRVqRjx"><img src="https://img.shields.io/badge/Discord-Join-5865F2?style=flat&logo=discord&logoColor=white" alt="Discord" /></a>
<a href="https://www.instagram.com/therealzeroclaw"><img src="https://img.shields.io/badge/Instagram-%40therealzeroclaw-E4405F?style=flat&logo=instagram&logoColor=white" alt="Instagram: @therealzeroclaw" /></a>
<a href="https://www.tiktok.com/@zeroclawlabs"><img src="https://img.shields.io/badge/TikTok-%40zeroclawlabs-000000?style=flat&logo=tiktok&logoColor=white" alt="TikTok: @zeroclawlabs" /></a>
<a href="https://www.rednote.com/user/profile/69b735e6000000002603927e"><img src="https://img.shields.io/badge/RedNote-Official-FF2442?style=flat" alt="RedNote" /></a>
<a href="https://www.facebook.com/groups/zeroclaw"><img src="https://img.shields.io/badge/Facebook-Group-1877F2?style=flat&logo=facebook&logoColor=white" alt="Facebook Group" /></a>
<a href="https://www.reddit.com/r/zeroclawlabs/"><img src="https://img.shields.io/badge/Reddit-r%2Fzeroclawlabs-FF4500?style=flat&logo=reddit&logoColor=white" alt="Reddit: r/zeroclawlabs" /></a>
</p>
<p align="center">
由哈佛大学、麻省理工学院和 Sundai.Club 社区的学生及成员构建。
</p>
<p align="center">
🌐 <strong>Languages:</strong>
🌐 语言:
<a href="README.md">🇺🇸 English</a> ·
<a href="README.zh-CN.md">🇨🇳 简体中文</a> ·
<a href="README.ja.md">🇯🇵 日本語</a> ·
@ -61,190 +52,85 @@
<a href="README.nb.md">🇳🇴 Norsk</a>
</p>
ZeroClaw 是一个运行在你自己设备上的个人AI助手。它在你已经使用的频道上回复你WhatsApp、Telegram、Slack、Discord、Signal、iMessage、Matrix、IRC、Email、Bluesky、Nostr、Mattermost、Nextcloud Talk、DingTalk、Lark、QQ、Reddit、LinkedIn、Twitter、MQTT、WeChat Work 等。它有一个用于实时控制的网页仪表板可以连接硬件外设ESP32、STM32、Arduino、Raspberry Pi。Gateway 只是控制平面——产品是助手本身。
如果你想要一个本地化、快速、始终在线的个人单用户助手,这就是它。
<p align="center">
<a href="https://zeroclawlabs.ai">官网</a> ·
<a href="docs/README.md">文档</a> ·
<a href="docs/architecture.md">架构</a> ·
<a href="#快速开始简版">入门指南</a> ·
<a href="#从-openclaw-迁移">从 OpenClaw 迁移</a> ·
<a href="docs/ops/troubleshooting.md">故障排除</a> ·
<a href="https://discord.com/invite/wDshRVqRjx">Discord</a>
<a href="https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/install.sh">一键部署</a> |
<a href="docs/i18n/zh-CN/setup-guides/README.zh-CN.md">安装入门</a> |
<a href="docs/README.zh-CN.md">文档总览</a> |
<a href="docs/SUMMARY.zh-CN.md">文档目录</a>
</p>
> **推荐设置方式:** 在终端运行 `zeroclaw onboard`。ZeroClaw Onboard 会引导你逐步设置网关、工作区、频道和提供者。这是推荐的设置路径,支持 macOS、Linux 和 Windows通过 WSL2。首次安装从这里开始[入门指南](#快速开始简版)
<p align="center">
<strong>场景分流:</strong>
<a href="docs/i18n/zh-CN/reference/README.zh-CN.md">参考手册</a> ·
<a href="docs/i18n/zh-CN/ops/README.zh-CN.md">运维部署</a> ·
<a href="docs/i18n/zh-CN/ops/troubleshooting.zh-CN.md">故障排查</a> ·
<a href="docs/i18n/zh-CN/security/README.zh-CN.md">安全专题</a> ·
<a href="docs/i18n/zh-CN/hardware/README.zh-CN.md">硬件外设</a> ·
<a href="docs/i18n/zh-CN/contributing/README.zh-CN.md">贡献与 CI</a>
</p>
### 订阅认证OAuth
- **OpenAI Codex**ChatGPT 订阅)
- **Gemini**Google OAuth
- **Anthropic**API 密钥或认证令牌)
模型说明:虽然支持许多提供者/模型,但为获得最佳体验,请使用你可用的最强最新一代模型。参见[引导设置](#快速开始简版)。
模型配置 + CLI[提供者参考](docs/reference/api/providers-reference.md)
认证配置轮换OAuth 与 API 密钥)+ 故障转移:[模型故障转移](docs/reference/api/providers-reference.md)
## 安装(推荐)
运行时Rust stable 工具链。单一二进制文件,无运行时依赖。
### HomebrewmacOS/Linuxbrew
```bash
brew install zeroclaw
```
### 一键安装
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./install.sh
```
`zeroclaw onboard` 在安装后自动运行,配置你的工作区和提供者。
## 快速开始(简版)
完整新手指南(认证、配对、频道):[入门指南](docs/setup-guides/one-click-bootstrap.md)
```bash
# 安装 + 引导
./install.sh --api-key "sk-..." --provider openrouter
# 启动网关webhook 服务器 + 网页仪表板)
zeroclaw gateway # 默认127.0.0.1:42617
zeroclaw gateway --port 0 # 随机端口(安全加固)
# 与助手对话
zeroclaw agent -m "Hello, ZeroClaw!"
# 交互模式
zeroclaw agent
# 启动完整自主运行时(网关 + 频道 + 定时任务 + 手)
zeroclaw daemon
# 检查状态
zeroclaw status
# 运行诊断
zeroclaw doctor
```
升级?更新后运行 `zeroclaw doctor`
### 从源码构建(开发)
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
cargo build --release --locked
cargo install --path . --force --locked
zeroclaw onboard
```
> **开发替代方案(无全局安装):** 命令前加 `cargo run --release --`(示例:`cargo run --release -- status`)。
## 从 OpenClaw 迁移
ZeroClaw 可以导入你的 OpenClaw 工作区、记忆和配置:
```bash
# 预览将迁移的内容(安全,只读)
zeroclaw migrate openclaw --dry-run
# 执行迁移
zeroclaw migrate openclaw
```
这会将你的记忆条目、工作区文件和配置从 `~/.openclaw/` 迁移到 `~/.zeroclaw/`。配置会自动从 JSON 转换为 TOML。
## 安全默认设置DM 访问)
ZeroClaw 连接到真实的消息平台。将入站 DM 视为不可信输入。
完整安全指南:[SECURITY.md](SECURITY.md)
所有频道的默认行为:
- **DM 配对**(默认):未知发送者会收到一个短配对码,机器人不会处理他们的消息。
- 使用以下命令批准:`zeroclaw pairing approve <channel> <code>`(然后发送者会被添加到本地允许列表)。
- 公共入站 DM 需要在 `config.toml` 中显式启用。
- 运行 `zeroclaw doctor` 来检测有风险或配置错误的 DM 策略。
**自主级别:**
| 级别 | 行为 |
|------|------|
| `ReadOnly` | 代理可以观察但不能操作 |
| `Supervised`(默认) | 代理在中/高风险操作时需要批准 |
| `Full` | 代理在策略范围内自主操作 |
**沙箱层:** 工作区隔离、路径遍历阻止、命令允许列表、禁止路径(`/etc`、`/root`、`~/.ssh`)、速率限制(每小时最大操作数、每日成本上限)。
> 本文是对 `README.md` 的人工对齐翻译(强调可读性与准确性,不做逐字直译)。
>
> 技术标识命令、配置键、API 路径、Trait 名称)保持英文,避免语义漂移。
>
> 最后对齐时间:**2026-03-14**。
<!-- BEGIN:WHATS_NEW -->
### 🚀 What's New in v0.3.1 (March 2026)
| Area | Highlights |
|---|---|
| ci | add Termux (aarch64-linux-android) release target |
<!-- END:WHATS_NEW -->
### 📢 公告
## 📢 公告板
使用此面板发布重要通知(破坏性更改、安全公告、维护窗口和发布阻塞问题)。
用于发布重要通知(破坏性变更、安全通告、维护窗口、版本阻塞问题等)。
| 日期 (UTC) | 级别 | 通知 | 操作 |
| ---------- | ---- | ---- | ---- |
| 2026-02-19 | _严重_ | 我们与 `openagen/zeroclaw`、`zeroclaw.org` 或 `zeroclaw.net` **无任何关联**。`zeroclaw.org` 和 `zeroclaw.net` 域名目前指向 `openagen/zeroclaw` 分支,该域名/仓库正在冒充我们的官方网站/项目。 | 不要信任来自这些来源的信息、二进制文件、筹款或公告。仅使用[本仓库](https://github.com/zeroclaw-labs/zeroclaw)和我们经过验证的社交账号。 |
| 2026-02-21 | _重要_ | 我们的官现已上线:[zeroclawlabs.ai](https://zeroclawlabs.ai)。感谢您在我们准备发布期间的耐心等待。我们仍然看到冒充行为,因此**不要**加入任何声称使用 ZeroClaw 名义的投资或筹款活动,除非它是通过我们的官方渠道发布的。 | 使用[本仓库](https://github.com/zeroclaw-labs/zeroclaw)作为唯一信息来源。关注 [X (@zeroclawlabs)](https://x.com/zeroclawlabs?s=21)、[Facebook (Group)](https://www.facebook.com/groups/zeroclawlabs) 和 [Reddit (r/zeroclawlabs)](https://www.reddit.com/r/zeroclawlabs/) 获取官方更新。 |
| 2026-02-19 | _重要_ | Anthropic 于 2026-02-19 更新了认证和凭证使用条款。Claude Code OAuth 令牌Free、Pro、Max仅供 Claude Code 和 Claude.ai 专用;在任何其他产品、工具或服务(包括 Agent SDK中使用 Claude Free/Pro/Max 的 OAuth 令牌是不允许的,可能违反消费者服务条款。 | 请暂时避免 Claude Code OAuth 集成以防止潜在损失。原始条款[Authentication and Credential Use](https://code.claude.com/docs/en/legal-and-compliance#authentication-and-credential-use)。 |
| 日期UTC | 级别 | 通知 | 处理建议 |
|---|---|---|---|
| 2026-02-19 | _紧急_ | 我们与 `openagen/zeroclaw``zeroclaw.org` **没有任何关系**。`zeroclaw.org` 当前会指向 `openagen/zeroclaw` 这个 fork并且该域名/仓库正在冒充我们的官网与官方项目。 | 请不要相信上述来源发布的任何信息、二进制、募资活动或官方声明。请仅以[本仓库](https://github.com/zeroclaw-labs/zeroclaw)和已验证官方社媒为准。 |
| 2026-02-21 | _重要_ | 我们的官网现已上线:[zeroclawlabs.ai](https://zeroclawlabs.ai)。感谢大家一直以来的耐心等待。我们仍在持续发现冒充行为,请勿参与任何未经我们官方渠道发布、但打着 ZeroClaw 名义进行的投资、募资或类似活动。 | 一切信息请以[本仓库](https://github.com/zeroclaw-labs/zeroclaw)为准;也可关注 [X@zeroclawlabs](https://x.com/zeroclawlabs?s=21)、[Telegram@zeroclawlabs](https://t.me/zeroclawlabs)、[Facebook群组](https://www.facebook.com/groups/zeroclaw)、[Redditr/zeroclawlabs](https://www.reddit.com/r/zeroclawlabs/) 与 [小红书账号](https://www.xiaohongshu.com/user/profile/67cbfc43000000000d008307?xsec_token=AB73VnYnGNx5y36EtnnZfGmAmS-6Wzv8WMuGpfwfkg6Yc%3D&xsec_source=pc_search) 获取官方最新动态。 |
| 2026-02-19 | _重要_ | Anthropic 于 2026-02-19 更新了 Authentication and Credential Use 条款。条款明确OAuth authentication用于 Free、Pro、Max仅适用于 Claude Code 与 Claude.ai将 Claude Free/Pro/Max 账号获得的 OAuth token 用于其他任何产品、工具或服务(包括 Agent SDK不被允许并可能构成对 Consumer Terms of Service 的违规。 | 为避免损失,请暂时不要尝试 Claude Code OAuth 集成;原文见:[Authentication and Credential Use](https://code.claude.com/docs/en/legal-and-compliance#authentication-and-credential-use)。 |
## 亮点
## 项目简介
- **默认精简运行时** — 常见 CLI 和状态工作流在发布构建中运行仅需数兆字节内存。
- **低成本部署** — 专为 10 美元开发板和小型云实例设计,无重量级运行时依赖。
- **快速冷启动** — 单一二进制 Rust 运行时使命令和守护进程启动近乎即时。
- **可移植架构** — 跨 ARM、x86 和 RISC-V 的单一二进制文件,可交换的提供者/频道/工具。
- **本地优先网关** — 用于会话、频道、工具、定时任务、SOP 和事件的单一控制平面。
- **多频道收件箱** — WhatsApp、Telegram、Slack、Discord、Signal、iMessage、Matrix、IRC、Email、Bluesky、Nostr、Mattermost、Nextcloud Talk、DingTalk、Lark、QQ、Reddit、LinkedIn、Twitter、MQTT、WeChat Work、WebSocket 等。
- **多代理编排Hands** — 按计划运行并随时间变得更智能的自主代理群。
- **标准操作规程SOPs** — 事件驱动的工作流自动化,支持 MQTT、webhook、cron 和外设触发器。
- **网页仪表板** — React 19 + Vite 网页 UI具有实时聊天、记忆浏览器、配置编辑器、定时任务管理器和工具检查器。
- **硬件外设** — 通过 `Peripheral` trait 支持 ESP32、STM32 Nucleo、Arduino、Raspberry Pi GPIO。
- **一流工具** — shell、文件 I/O、浏览器、git、网页抓取/搜索、MCP、Jira、Notion、Google Workspace 等 70+ 种。
- **生命周期钩子** — 在每个阶段拦截和修改 LLM 调用、工具执行和消息。
- **技能平台** — 内置、社区和工作区技能,带安全审计。
- **隧道支持** — Cloudflare、Tailscale、ngrok、OpenVPN 和自定义隧道用于远程访问。
ZeroClaw 是一个高性能、低资源占用、可组合的自主智能体运行时。ZeroClaw 是面向智能代理工作流的**运行时操作系统** — 它抽象了模型、工具、记忆和执行层,使代理可以一次构建、随处运行。
### 团队为什么选择 ZeroClaw
- Rust 原生实现,单二进制部署,跨 ARM / x86 / RISC-V。
- Trait 驱动架构,`Provider` / `Channel` / `Tool` / `Memory` 可替换。
- 安全默认值优先:配对鉴权、显式 allowlist、沙箱与作用域约束。
- **默认精简:** 小型 Rust 二进制文件,快速启动,低内存占用。
- **安全设计:** 配对、严格沙箱、显式允许列表、工作区范围限定。
- **完全可替换:** 核心系统都是 trait提供者、频道、工具、记忆、隧道
- **无锁定:** 支持 OpenAI 兼容提供者 + 可插拔自定义端点。
## 为什么选择 ZeroClaw
## 基准测试快照ZeroClaw 对比 OpenClaw可复现
- **默认轻量运行时**:常见 CLI 与 `status` 工作流通常保持在几 MB 级内存范围。
- **低成本部署友好**:面向低价板卡与小规格云主机设计,不依赖厚重运行时。
- **冷启动速度快**Rust 单二进制让常用命令与守护进程启动更接近“秒开”。
- **跨架构可移植**:同一套二进制优先流程覆盖 ARM / x86 / RISC-V并保持 provider/channel/tool 可替换。
本地机器快速基准测试macOS arm642026年2月针对 0.8GHz 边缘硬件标准化。
## 基准快照ZeroClaw vs OpenClaw可复现
| | OpenClaw | NanoBot | PicoClaw | ZeroClaw 🦀 |
| ------------------------- | ------------- | -------------- | --------------- | -------------------- |
| **语言** | TypeScript | Python | Go | **Rust** |
| **RAM** | > 1GB | > 100MB | < 10MB | **< 5MB** |
| **启动时间0.8GHz 核心)** | > 500s | > 30s | < 1s | **< 10ms** |
| **二进制大小** | ~28MB (dist) | N/A (Scripts) | ~8MB | **~8.8 MB** |
| **成本** | Mac Mini $599 | Linux SBC ~$50 | Linux Board $10 | **任何硬件 $10** |
以下是本地快速基准对比macOS arm642026 年 2 月),按 0.8GHz 边缘 CPU 进行归一化展示:
> 注意ZeroClaw 的结果使用 `/usr/bin/time -l` 在发布构建上测量。OpenClaw 需要 Node.js 运行时(通常约 390MB 额外内存开销),而 NanoBot 需要 Python 运行时。PicoClaw 和 ZeroClaw 是静态二进制文件。上述 RAM 数据为运行时内存;构建时编译需求更高。
| | OpenClaw | NanoBot | PicoClaw | ZeroClaw 🦀 |
|---|---|---|---|---|
| **语言** | TypeScript | Python | Go | **Rust** |
| **RAM** | > 1GB | > 100MB | < 10MB | **< 5MB** |
| **启动时间0.8GHz 核)** | > 500s | > 30s | < 1s | **< 10ms** |
| **二进制体积** | ~28MBdist | N/A脚本 | ~8MB | **~8.8 MB** |
| **成本** | Mac Mini $599 | Linux SBC ~$50 | Linux 板卡 $10 | **任意 $10 硬件** |
> 说明ZeroClaw 的数据来自 release 构建,并通过 `/usr/bin/time -l` 测得。OpenClaw 需要 Node.js 运行时环境,仅该运行时通常就会带来约 390MB 的额外内存占用NanoBot 需要 Python 运行时环境。PicoClaw 与 ZeroClaw 为静态二进制。
<p align="center">
<img src="docs/assets/zeroclaw-comparison.jpeg" alt="ZeroClaw vs OpenClaw Comparison" width="800" />
<img src="docs/assets/zeroclaw-comparison.jpeg" alt="ZeroClaw vs OpenClaw 对比图" width="800" />
</p>
### 可复现的本地测量
### 本地可复现测量
基准数据会随代码与工具链变化,建议始终在你的目标环境自行复测:
```bash
cargo build --release
@ -254,502 +140,120 @@ ls -lh target/release/zeroclaw
/usr/bin/time -l target/release/zeroclaw status
```
## 我们迄今为止构建的一切
当前 README 的样例数据macOS arm642026-02-18
### 核心平台
- Release 二进制:`8.8M`
- `zeroclaw --help`:约 `0.02s`,峰值内存约 `3.9MB`
- `zeroclaw status`:约 `0.01s`,峰值内存约 `4.1MB`
- Gateway HTTP/WS/SSE 控制平面支持会话、在线状态、配置、定时任务、webhook、网页仪表板和配对。
- CLI 表面:`gateway`、`agent`、`onboard`、`doctor`、`status`、`service`、`migrate`、`auth`、`cron`、`channel`、`skills`。
- 代理编排循环,支持工具调度、提示构建、消息分类和记忆加载。
- 会话模型,支持安全策略执行、自主级别和批准门控。
- 弹性提供者包装器,支持故障转移、重试和跨 20+ LLM 后端的模型路由。
### 频道
频道WhatsApp原生、Telegram、Slack、Discord、Signal、iMessage、Matrix、IRC、Email、Bluesky、DingTalk、Lark、Mattermost、Nextcloud Talk、Nostr、QQ、Reddit、LinkedIn、Twitter、MQTT、WeChat Work、WATI、Mochat、Linq、Notion、WebSocket、ClawdTalk。
功能门控Matrix`channel-matrix`、Lark`channel-lark`、Nostr`channel-nostr`)。
### 网页仪表板
React 19 + Vite 6 + Tailwind CSS 4 网页仪表板直接从 Gateway 提供:
- **仪表板** — 系统概览、健康状态、运行时间、成本跟踪
- **代理聊天** — 与代理的交互式聊天
- **记忆** — 浏览和管理记忆条目
- **配置** — 查看和编辑配置
- **定时任务** — 管理计划任务
- **工具** — 浏览可用工具
- **日志** — 查看代理活动日志
- **成本** — 令牌使用和成本跟踪
- **诊断** — 系统健康诊断
- **集成** — 集成状态和设置
- **配对** — 设备配对管理
### 固件目标
| 目标 | 平台 | 用途 |
|------|------|------|
| ESP32 | Espressif ESP32 | 无线外设代理 |
| ESP32-UI | ESP32 + Display | 带可视化界面的代理 |
| STM32 Nucleo | STM32 (ARM Cortex-M) | 工业外设 |
| Arduino | Arduino | 基础传感器/执行器桥接 |
| Uno Q Bridge | Arduino Uno | 到代理的串口桥接 |
### 工具 + 自动化
- **核心:** shell、文件读/写/编辑、git 操作、glob 搜索、内容搜索
- **网络:** 浏览器控制、网页抓取、网络搜索、截图、图片信息、PDF 阅读
- **集成:** Jira、Notion、Google Workspace、Microsoft 365、LinkedIn、Composio、Pushover
- **MCP** Model Context Protocol 工具包装器 + 延迟工具集
- **调度:** cron 添加/删除/更新/运行、计划工具
- **记忆:** 回忆、存储、遗忘、知识、项目情报
- **高级:** 委托(代理到代理)、群体、模型切换/路由、安全操作、云操作
- **硬件:** 板信息、内存映射、内存读取(功能门控)
### 运行时 + 安全
- **自主级别:** ReadOnly、Supervised默认、Full。
- **沙箱:** 工作区隔离、路径遍历阻止、命令允许列表、禁止路径、LandlockLinux、Bubblewrap。
- **速率限制:** 每小时最大操作数、每日最大成本(可配置)。
- **批准门控:** 中/高风险操作的交互式批准。
- **紧急停止:** 紧急关闭功能。
- **129+ 安全测试** 在自动化 CI 中。
### 运维 + 打包
- 网页仪表板直接从 Gateway 提供。
- 隧道支持Cloudflare、Tailscale、ngrok、OpenVPN、自定义命令。
- Docker 运行时适配器用于容器化执行。
- CI/CDbeta推送时自动→ stable手动触发→ Docker、crates.io、Scoop、AUR、Homebrew、tweet。
- 预构建二进制文件支持 Linuxx86_64、aarch64、armv7、macOSx86_64、aarch64、Windowsx86_64
## 配置
最小 `~/.zeroclaw/config.toml`
```toml
default_provider = "anthropic"
api_key = "sk-ant-..."
```
完整配置参考:[docs/reference/api/config-reference.md](docs/reference/api/config-reference.md)。
### 频道配置
**Telegram**
```toml
[channels.telegram]
bot_token = "123456:ABC-DEF..."
```
**Discord**
```toml
[channels.discord]
token = "your-bot-token"
```
**Slack**
```toml
[channels.slack]
bot_token = "xoxb-..."
app_token = "xapp-..."
```
**WhatsApp**
```toml
[channels.whatsapp]
enabled = true
```
**Matrix**
```toml
[channels.matrix]
homeserver_url = "https://matrix.org"
username = "@bot:matrix.org"
password = "..."
```
**Signal**
```toml
[channels.signal]
phone_number = "+1234567890"
```
### 隧道配置
```toml
[tunnel]
kind = "cloudflare" # or "tailscale", "ngrok", "openvpn", "custom", "none"
```
详情:[频道参考](docs/reference/api/channels-reference.md) · [配置参考](docs/reference/api/config-reference.md)
### 运行时支持(当前)
- **`native`**(默认)— 直接进程执行,最快路径,适合可信环境。
- **`docker`** — 完全容器隔离,强制安全策略,需要 Docker。
设置 `runtime.kind = "docker"` 以获得严格沙箱或网络隔离。
## 订阅认证OpenAI Codex / Claude Code / Gemini
ZeroClaw 支持订阅原生认证配置文件(多账户,静态加密)。
- 存储文件:`~/.zeroclaw/auth-profiles.json`
- 加密密钥:`~/.zeroclaw/.secret_key`
- 配置文件 ID 格式:`<provider>:<profile_name>`(示例:`openai-codex:work`
## 一键部署
```bash
# OpenAI Codex OAuthChatGPT 订阅)
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./install.sh
```
可选环境初始化:`./install.sh --install-system-deps --install-rust`(可能需要 `sudo`)。
详细说明见:[`docs/setup-guides/one-click-bootstrap.md`](docs/i18n/zh-CN/setup-guides/one-click-bootstrap.zh-CN.md)。
## 快速开始
### HomebrewmacOS/Linuxbrew
```bash
brew install zeroclaw
```
```bash
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
cargo build --release --locked
cargo install --path . --force --locked
# 快速初始化(无交互)
zeroclaw onboard --api-key sk-... --provider openrouter
# 或使用引导式向导
zeroclaw onboard
# 单次对话
zeroclaw agent -m "Hello, ZeroClaw!"
# 启动网关(默认: 127.0.0.1:42617
zeroclaw gateway
# 启动长期运行模式
zeroclaw daemon
```
## Subscription AuthOpenAI Codex / Claude Code
ZeroClaw 现已支持基于订阅的原生鉴权配置(多账号、静态加密存储)。
- 配置文件:`~/.zeroclaw/auth-profiles.json`
- 加密密钥:`~/.zeroclaw/.secret_key`
- Profile ID 格式:`<provider>:<profile_name>`(例:`openai-codex:work`
OpenAI Codex OAuthChatGPT 订阅):
```bash
# 推荐用于服务器/无显示器环境
zeroclaw auth login --provider openai-codex --device-code
# Gemini OAuth
zeroclaw auth login --provider gemini --profile default
# 浏览器/回调流程,支持粘贴回退
zeroclaw auth login --provider openai-codex --profile default
zeroclaw auth paste-redirect --provider openai-codex --profile default
# Anthropic setup-token
zeroclaw auth paste-token --provider anthropic --profile default --auth-kind authorization
# 检查 / 刷新 / 切换配置文件
# 检查 / 刷新 / 切换 profile
zeroclaw auth status
zeroclaw auth refresh --provider openai-codex --profile default
zeroclaw auth use --provider openai-codex --profile work
```
# 使用订阅认证运行代理
Claude Code / Anthropic setup-token
```bash
# 粘贴订阅/setup tokenAuthorization header 模式)
zeroclaw auth paste-token --provider anthropic --profile default --auth-kind authorization
# 别名命令
zeroclaw auth setup-token --provider anthropic --profile default
```
使用 subscription auth 运行 agent
```bash
zeroclaw agent --provider openai-codex -m "hello"
zeroclaw agent --provider openai-codex --auth-profile openai-codex:work -m "hello"
# Anthropic 同时支持 API key 和 auth token 环境变量:
# ANTHROPIC_AUTH_TOKEN, ANTHROPIC_OAUTH_TOKEN, ANTHROPIC_API_KEY
zeroclaw agent --provider anthropic -m "hello"
```
## 代理工作区 + 技能
## 贡献与许可证
工作区根目录:`~/.zeroclaw/workspace/`(可通过配置自定义)。
注入的提示文件:
- `IDENTITY.md` — 代理人格和角色
- `USER.md` — 用户上下文和偏好
- `MEMORY.md` — 长期事实和经验
- `AGENTS.md` — 会话约定和初始化规则
- `SOUL.md` — 核心身份和运作原则
技能:`~/.zeroclaw/workspace/skills/<skill>/SKILL.md` 或 `SKILL.toml`
```bash
# 列出已安装的技能
zeroclaw skills list
# 从 git 安装
zeroclaw skills install https://github.com/user/my-skill.git
# 安装前安全审计
zeroclaw skills audit https://github.com/user/my-skill.git
# 移除技能
zeroclaw skills remove my-skill
```
## CLI 命令
```bash
# 工作区管理
zeroclaw onboard # 引导设置向导
zeroclaw status # 显示守护进程/代理状态
zeroclaw doctor # 运行系统诊断
# 网关 + 守护进程
zeroclaw gateway # 启动网关服务器127.0.0.1:42617
zeroclaw daemon # 启动完整自主运行时
# 代理
zeroclaw agent # 交互式聊天模式
zeroclaw agent -m "message" # 单条消息模式
# 服务管理
zeroclaw service install # 作为系统服务安装launchd/systemd
zeroclaw service start|stop|restart|status
# 频道
zeroclaw channel list # 列出已配置的频道
zeroclaw channel doctor # 检查频道健康状况
zeroclaw channel bind-telegram 123456789
# 定时任务 + 调度
zeroclaw cron list # 列出计划任务
zeroclaw cron add "*/5 * * * *" --prompt "Check system health"
zeroclaw cron remove <id>
# 记忆
zeroclaw memory list # 列出记忆条目
zeroclaw memory get <key> # 检索记忆
zeroclaw memory stats # 记忆统计
# 认证配置文件
zeroclaw auth login --provider <name>
zeroclaw auth status
zeroclaw auth use --provider <name> --profile <profile>
# 硬件外设
zeroclaw hardware discover # 扫描已连接的设备
zeroclaw peripheral list # 列出已连接的外设
zeroclaw peripheral flash # 向设备刷写固件
# 迁移
zeroclaw migrate openclaw --dry-run
zeroclaw migrate openclaw
# Shell 补全
source <(zeroclaw completions bash)
zeroclaw completions zsh > ~/.zfunc/_zeroclaw
```
完整命令参考:[docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
<!-- markdownlint-disable MD001 MD024 -->
## 前置条件
<details>
<summary><strong>Windows</strong></summary>
#### 必需
1. **Visual Studio Build Tools**(提供 MSVC 链接器和 Windows SDK
```powershell
winget install Microsoft.VisualStudio.2022.BuildTools
```
在安装期间(或通过 Visual Studio 安装程序),选择 **"Desktop development with C++"** 工作负载。
2. **Rust 工具链:**
```powershell
winget install Rustlang.Rustup
```
安装后,打开新终端并运行 `rustup default stable` 确保 stable 工具链已激活。
3. **验证**两者是否正常工作:
```powershell
rustc --version
cargo --version
```
#### 可选
- **Docker Desktop** — 仅在使用 [Docker 沙箱运行时](#运行时支持当前)`runtime.kind = "docker"`)时需要。通过 `winget install Docker.DockerDesktop` 安装。
</details>
<details>
<summary><strong>Linux / macOS</strong></summary>
#### 必需
1. **构建工具:**
- **Linux (Debian/Ubuntu):** `sudo apt install build-essential pkg-config`
- **Linux (Fedora/RHEL):** `sudo dnf group install development-tools && sudo dnf install pkg-config`
- **macOS:** 安装 Xcode 命令行工具:`xcode-select --install`
2. **Rust 工具链:**
```bash
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
```
详情参见 [rustup.rs](https://rustup.rs)。
3. **验证**两者是否正常工作:
```bash
rustc --version
cargo --version
```
#### 一行安装
或者跳过上述步骤使用单条命令安装所有内容系统依赖、Rust、ZeroClaw
```bash
curl -LsSf https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/master/install.sh | bash
```
#### 编译资源需求
从源码构建比运行生成的二进制文件需要更多资源:
| 资源 | 最低 | 推荐 |
| ---- | ---- | ---- |
| **RAM + swap** | 2 GB | 4 GB+ |
| **可用磁盘** | 6 GB | 10 GB+ |
如果你的主机低于最低要求,使用预构建二进制文件:
```bash
./install.sh --prefer-prebuilt
```
仅使用二进制安装,不回退到源码编译:
```bash
./install.sh --prebuilt-only
```
#### 可选
- **Docker** — 仅在使用 [Docker 沙箱运行时](#运行时支持当前)`runtime.kind = "docker"`)时需要。通过你的包管理器或 [docker.com](https://docs.docker.com/engine/install/) 安装。
> **注意:** 默认的 `cargo build --release` 使用 `codegen-units=1` 以降低编译峰值压力。对于强大的机器,使用 `cargo build --profile release-fast` 加速构建。
</details>
<!-- markdownlint-enable MD001 MD024 -->
### 预构建二进制文件
发布资产可用于:
- Linux: `x86_64`、`aarch64`、`armv7`
- macOS: `x86_64`、`aarch64`
- Windows: `x86_64`
从以下位置下载最新资产:
<https://github.com/zeroclaw-labs/zeroclaw/releases/latest>
## 文档
当你完成引导流程后需要更深入的参考时使用这些文档。
- 从[文档索引](docs/README.md)开始了解导航和内容分布。
- 阅读[架构概述](docs/architecture.md)了解完整系统模型。
- 使用[配置参考](docs/reference/api/config-reference.md)查阅所有键和示例。
- 按照[运维手册](docs/ops/operations-runbook.md)运行 Gateway。
- 按照 [ZeroClaw Onboard](#快速开始简版) 进行引导设置。
- 使用[故障排除指南](docs/ops/troubleshooting.md)调试常见故障。
- 在暴露任何内容之前查看[安全指南](docs/security/README.md)。
### 参考文档
- 文档中心:[docs/README.md](docs/README.md)
- 统一文档目录:[docs/SUMMARY.md](docs/SUMMARY.md)
- 命令参考:[docs/reference/cli/commands-reference.md](docs/reference/cli/commands-reference.md)
- 配置参考:[docs/reference/api/config-reference.md](docs/reference/api/config-reference.md)
- 提供者参考:[docs/reference/api/providers-reference.md](docs/reference/api/providers-reference.md)
- 频道参考:[docs/reference/api/channels-reference.md](docs/reference/api/channels-reference.md)
- 运维手册:[docs/ops/operations-runbook.md](docs/ops/operations-runbook.md)
- 故障排除:[docs/ops/troubleshooting.md](docs/ops/troubleshooting.md)
### 协作文档
- 贡献指南:[CONTRIBUTING.md](CONTRIBUTING.md)
- PR 工作流策略:[docs/contributing/pr-workflow.md](docs/contributing/pr-workflow.md)
- CI 工作流指南:[docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- 审查员手册:[docs/contributing/reviewer-playbook.md](docs/contributing/reviewer-playbook.md)
- 安全披露策略:[SECURITY.md](SECURITY.md)
- 文档模板:[docs/contributing/doc-template.md](docs/contributing/doc-template.md)
### 部署 + 运维
- 网络部署指南:[docs/ops/network-deployment.md](docs/ops/network-deployment.md)
- 代理代理手册:[docs/ops/proxy-agent-playbook.md](docs/ops/proxy-agent-playbook.md)
- 硬件指南:[docs/hardware/README.md](docs/hardware/README.md)
## Smooth Crab 🦀
ZeroClaw 为 smooth crab 🦀 而构建,一个快速高效的 AI 助手。由 Argenis De La Rosa 和社区共同构建。
- [zeroclawlabs.ai](https://zeroclawlabs.ai)
- [@zeroclawlabs](https://x.com/zeroclawlabs)
## 支持 ZeroClaw
如果 ZeroClaw 对你的工作有帮助,你想支持持续开发,可以在这里捐款:
<a href="https://buymeacoffee.com/argenistherose"><img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=for-the-badge&logo=buy-me-a-coffee" alt="Buy Me a Coffee" /></a>
### 🙏 特别感谢
衷心感谢激励和推动这项开源工作的社区和机构:
- **哈佛大学** — 培养求知欲并推动可能性的边界。
- **MIT** — 倡导开放知识、开源以及技术应该人人可及的信念。
- **Sundai Club** — 社区、能量以及不懈追求构建有意义事物的动力。
- **世界及更远** 🌍✨ — 致每一位贡献者、梦想家和构建者,你们让开源成为一股向善的力量。这是献给你们的。
我们公开构建,因为最好的想法来自四面八方。如果你在阅读这些,你就是其中的一部分。欢迎。🦀❤️
## 贡献
ZeroClaw 新手?寻找标记为 [`good first issue`](https://github.com/zeroclaw-labs/zeroclaw/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) 的问题 — 参阅我们的[贡献指南](CONTRIBUTING.md#first-time-contributors)了解如何开始。欢迎 AI/vibe-coded PR🤖
参见 [CONTRIBUTING.md](CONTRIBUTING.md) 和 [CLA.md](docs/contributing/cla.md)。实现一个 trait提交 PR
- CI 工作流指南:[docs/contributing/ci-map.md](docs/contributing/ci-map.md)
- 新 `Provider``src/providers/`
- 新 `Channel``src/channels/`
- 新 `Observer``src/observability/`
- 新 `Tool``src/tools/`
- 新 `Memory``src/memory/`
- 新 `Tunnel``src/tunnel/`
- 新 `Peripheral``src/peripherals/`
- 新 `Skill``~/.zeroclaw/workspace/skills/<name>/`
- 贡献指南:[`CONTRIBUTING.md`](CONTRIBUTING.md)
- PR 工作流:[`docs/contributing/pr-workflow.md`](docs/i18n/zh-CN/contributing/pr-workflow.zh-CN.md)
- Reviewer 指南:[`docs/contributing/reviewer-playbook.md`](docs/i18n/zh-CN/contributing/reviewer-playbook.zh-CN.md)
- 许可证MIT 或 Apache 2.0(见 [`LICENSE-MIT`](LICENSE-MIT)、[`LICENSE-APACHE`](LICENSE-APACHE) 与 [`NOTICE`](NOTICE)
<!-- BEGIN:RECENT_CONTRIBUTORS -->
### 🌟 Recent Contributors (v0.3.1)
3 contributors shipped features, fixes, and improvements in this release cycle:
- **Argenis**
- **argenis de la rosa**
- **Claude Opus 4.6**
Thank you to everyone who opened issues, reviewed PRs, translated docs, and helped test. Every contribution matters. 🦀
<!-- END:RECENT_CONTRIBUTORS -->
## ⚠️ 官方仓库和冒充警告
**这是唯一的 ZeroClaw 官方仓库:**
> https://github.com/zeroclaw-labs/zeroclaw
任何其他声称是"ZeroClaw"或暗示与 ZeroClaw Labs 有关联的仓库、组织、域名或包都是**未经授权的,与本项目无关**。已知的未授权分支将在 [TRADEMARK.md](docs/maintainers/trademark.md) 中列出。
如果你遇到冒充或商标滥用,请[提交问题](https://github.com/zeroclaw-labs/zeroclaw/issues)。
---
## 许可证
ZeroClaw 采用双重许可,以实现最大开放性和贡献者保护:
| 许可证 | 使用场景 |
|--------|----------|
| [MIT](LICENSE-MIT) | 开源、研究、学术、个人使用 |
| [Apache 2.0](LICENSE-APACHE) | 专利保护、机构、商业部署 |
你可以选择任一许可证。**贡献者自动授予两种许可证的权利** — 参见 [CLA.md](docs/contributing/cla.md) 了解完整的贡献者协议。
### 商标
**ZeroClaw** 名称和标志是 ZeroClaw Labs 的商标。此许可证不授予使用它们暗示背书或关联的权限。参见 [TRADEMARK.md](docs/maintainers/trademark.md) 了解允许和禁止的使用。
### 贡献者保护
- 你**保留**你贡献的版权
- **专利授权**Apache 2.0)保护你免受其他贡献者的专利索赔
- 你的贡献在提交历史和 [NOTICE](NOTICE) 中**永久归属**
- 贡献不转让商标权
---
**ZeroClaw** — 零开销。零妥协。随处部署。任意替换。🦀
## 贡献者
<a href="https://github.com/zeroclaw-labs/zeroclaw/graphs/contributors">
<img src="https://contrib.rocks/image?repo=zeroclaw-labs/zeroclaw" alt="ZeroClaw contributors" />
</a>
此列表从 GitHub 贡献者图表生成,自动更新。
## Star 历史
<p align="center">
<a href="https://www.star-history.com/#zeroclaw-labs/zeroclaw&type=date&legend=top-left">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&theme=dark&legend=top-left" />
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=zeroclaw-labs/zeroclaw&type=date&legend=top-left" />
</picture>
</a>
</p>
如果你需要完整实现细节(架构图、全部命令、完整 API、开发流程请直接阅读英文主文档[`README.md`](README.md)。

View File

@ -1,29 +0,0 @@
[package]
name = "zeroclaw-desktop"
version = "0.1.0"
edition = "2021"
description = "ZeroClaw Desktop — Tauri-powered system tray app"
publish = false
[build-dependencies]
tauri-build = { version = "2.0", features = [] }
[dependencies]
tauri = { version = "2.0", features = ["tray-icon", "image-png"] }
tauri-plugin-shell = "2.0"
tauri-plugin-store = "2.0"
tauri-plugin-single-instance = "2.0"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
reqwest = { version = "0.12", default-features = false, features = ["json", "rustls-tls"] }
tokio = { version = "1.50", features = ["rt-multi-thread", "macros", "sync", "time"] }
anyhow = "1.0"
[target.'cfg(target_os = "macos")'.dependencies]
objc2 = "0.6"
objc2-app-kit = { version = "0.3", features = ["NSApplication", "NSImage", "NSRunningApplication"] }
objc2-foundation = { version = "0.3", features = ["NSData"] }
[features]
default = ["custom-protocol"]
custom-protocol = ["tauri/custom-protocol"]

View File

@ -1,3 +0,0 @@
fn main() {
tauri_build::build();
}

View File

@ -1,14 +0,0 @@
{
"$schema": "../gen/schemas/desktop-schema.json",
"identifier": "default",
"description": "Default capability set for ZeroClaw Desktop",
"windows": ["main"],
"permissions": [
"core:default",
"shell:allow-open",
"store:allow-get",
"store:allow-set",
"store:allow-save",
"store:allow-load"
]
}

View File

@ -1,14 +0,0 @@
{
"identifier": "desktop",
"description": "Desktop-specific permissions for ZeroClaw",
"windows": ["main"],
"permissions": [
"core:default",
"shell:allow-open",
"shell:allow-execute",
"store:allow-get",
"store:allow-set",
"store:allow-save",
"store:allow-load"
]
}

View File

@ -1,8 +0,0 @@
{
"identifier": "mobile",
"description": "Mobile-specific permissions for ZeroClaw",
"windows": ["main"],
"permissions": [
"core:default"
]
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1002 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 243 B

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 243 B

View File

@ -1,4 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128">
<rect width="128" height="128" rx="16" fill="#DC322F"/>
<text x="64" y="80" font-size="64" font-family="monospace" font-weight="bold" fill="white" text-anchor="middle">Z</text>
</svg>

Before

Width:  |  Height:  |  Size: 251 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 199 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 208 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 168 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 201 B

View File

@ -1,17 +0,0 @@
use crate::gateway_client::GatewayClient;
use crate::state::SharedState;
use tauri::State;
#[tauri::command]
pub async fn send_message(
state: State<'_, SharedState>,
message: String,
) -> Result<serde_json::Value, String> {
let s = state.read().await;
let client = GatewayClient::new(&s.gateway_url, s.token.as_deref());
drop(s);
client
.send_webhook_message(&message)
.await
.map_err(|e| e.to_string())
}

View File

@ -1,11 +0,0 @@
use crate::gateway_client::GatewayClient;
use crate::state::SharedState;
use tauri::State;
#[tauri::command]
pub async fn list_channels(state: State<'_, SharedState>) -> Result<serde_json::Value, String> {
let s = state.read().await;
let client = GatewayClient::new(&s.gateway_url, s.token.as_deref());
drop(s);
client.get_status().await.map_err(|e| e.to_string())
}

View File

@ -1,19 +0,0 @@
use crate::gateway_client::GatewayClient;
use crate::state::SharedState;
use tauri::State;
#[tauri::command]
pub async fn get_status(state: State<'_, SharedState>) -> Result<serde_json::Value, String> {
let s = state.read().await;
let client = GatewayClient::new(&s.gateway_url, s.token.as_deref());
drop(s);
client.get_status().await.map_err(|e| e.to_string())
}
#[tauri::command]
pub async fn get_health(state: State<'_, SharedState>) -> Result<bool, String> {
let s = state.read().await;
let client = GatewayClient::new(&s.gateway_url, s.token.as_deref());
drop(s);
client.get_health().await.map_err(|e| e.to_string())
}

View File

@ -1,4 +0,0 @@
pub mod agent;
pub mod channels;
pub mod gateway;
pub mod pairing;

View File

@ -1,19 +0,0 @@
use crate::gateway_client::GatewayClient;
use crate::state::SharedState;
use tauri::State;
#[tauri::command]
pub async fn initiate_pairing(state: State<'_, SharedState>) -> Result<serde_json::Value, String> {
let s = state.read().await;
let client = GatewayClient::new(&s.gateway_url, s.token.as_deref());
drop(s);
client.initiate_pairing().await.map_err(|e| e.to_string())
}
#[tauri::command]
pub async fn get_devices(state: State<'_, SharedState>) -> Result<serde_json::Value, String> {
let s = state.read().await;
let client = GatewayClient::new(&s.gateway_url, s.token.as_deref());
drop(s);
client.get_devices().await.map_err(|e| e.to_string())
}

View File

@ -1,213 +0,0 @@
//! HTTP client for communicating with the ZeroClaw gateway.
use anyhow::{Context, Result};
pub struct GatewayClient {
pub(crate) base_url: String,
pub(crate) token: Option<String>,
client: reqwest::Client,
}
impl GatewayClient {
pub fn new(base_url: &str, token: Option<&str>) -> Self {
let client = reqwest::Client::builder()
.timeout(std::time::Duration::from_secs(10))
.build()
.unwrap_or_default();
Self {
base_url: base_url.to_string(),
token: token.map(String::from),
client,
}
}
pub(crate) fn auth_header(&self) -> Option<String> {
self.token.as_ref().map(|t| format!("Bearer {t}"))
}
pub async fn get_status(&self) -> Result<serde_json::Value> {
let mut req = self.client.get(format!("{}/api/status", self.base_url));
if let Some(auth) = self.auth_header() {
req = req.header("Authorization", auth);
}
let resp = req.send().await.context("status request failed")?;
Ok(resp.json().await?)
}
pub async fn get_health(&self) -> Result<bool> {
match self
.client
.get(format!("{}/health", self.base_url))
.send()
.await
{
Ok(resp) => Ok(resp.status().is_success()),
Err(_) => Ok(false),
}
}
pub async fn get_devices(&self) -> Result<serde_json::Value> {
let mut req = self.client.get(format!("{}/api/devices", self.base_url));
if let Some(auth) = self.auth_header() {
req = req.header("Authorization", auth);
}
let resp = req.send().await.context("devices request failed")?;
Ok(resp.json().await?)
}
pub async fn initiate_pairing(&self) -> Result<serde_json::Value> {
let mut req = self
.client
.post(format!("{}/api/pairing/initiate", self.base_url));
if let Some(auth) = self.auth_header() {
req = req.header("Authorization", auth);
}
let resp = req.send().await.context("pairing request failed")?;
Ok(resp.json().await?)
}
/// Check whether the gateway requires pairing.
pub async fn requires_pairing(&self) -> Result<bool> {
let resp = self
.client
.get(format!("{}/health", self.base_url))
.send()
.await
.context("health request failed")?;
let body: serde_json::Value = resp.json().await?;
Ok(body["require_pairing"].as_bool().unwrap_or(false))
}
/// Request a new pairing code from the gateway (localhost-only admin endpoint).
pub async fn request_new_paircode(&self) -> Result<String> {
let resp = self
.client
.post(format!("{}/admin/paircode/new", self.base_url))
.send()
.await
.context("paircode request failed")?;
let body: serde_json::Value = resp.json().await?;
body["pairing_code"]
.as_str()
.map(String::from)
.context("no pairing_code in response")
}
/// Exchange a pairing code for a bearer token.
pub async fn pair_with_code(&self, code: &str) -> Result<String> {
let resp = self
.client
.post(format!("{}/pair", self.base_url))
.header("X-Pairing-Code", code)
.send()
.await
.context("pair request failed")?;
if !resp.status().is_success() {
anyhow::bail!("pair request returned {}", resp.status());
}
let body: serde_json::Value = resp.json().await?;
body["token"]
.as_str()
.map(String::from)
.context("no token in pair response")
}
/// Validate an existing token by calling a protected endpoint.
pub async fn validate_token(&self) -> Result<bool> {
let mut req = self.client.get(format!("{}/api/status", self.base_url));
if let Some(auth) = self.auth_header() {
req = req.header("Authorization", auth);
}
match req.send().await {
Ok(resp) => Ok(resp.status().is_success()),
Err(_) => Ok(false),
}
}
/// Auto-pair with the gateway: request a new code and exchange it for a token.
pub async fn auto_pair(&self) -> Result<String> {
let code = self.request_new_paircode().await?;
self.pair_with_code(&code).await
}
pub async fn send_webhook_message(&self, message: &str) -> Result<serde_json::Value> {
let mut req = self
.client
.post(format!("{}/webhook", self.base_url))
.json(&serde_json::json!({ "message": message }));
if let Some(auth) = self.auth_header() {
req = req.header("Authorization", auth);
}
let resp = req.send().await.context("webhook request failed")?;
Ok(resp.json().await?)
}
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn client_creation_no_token() {
let client = GatewayClient::new("http://127.0.0.1:42617", None);
assert_eq!(client.base_url, "http://127.0.0.1:42617");
assert!(client.token.is_none());
assert!(client.auth_header().is_none());
}
#[test]
fn client_creation_with_token() {
let client = GatewayClient::new("http://localhost:8080", Some("test-token"));
assert_eq!(client.base_url, "http://localhost:8080");
assert_eq!(client.token.as_deref(), Some("test-token"));
assert_eq!(client.auth_header().unwrap(), "Bearer test-token");
}
#[test]
fn client_custom_url() {
let client = GatewayClient::new("https://zeroclaw.example.com:9999", None);
assert_eq!(client.base_url, "https://zeroclaw.example.com:9999");
}
#[test]
fn auth_header_format() {
let client = GatewayClient::new("http://localhost", Some("zc_abc123"));
assert_eq!(client.auth_header().unwrap(), "Bearer zc_abc123");
}
#[tokio::test]
async fn health_returns_false_for_unreachable_host() {
// Connect to a port that should not be listening.
let client = GatewayClient::new("http://127.0.0.1:1", None);
let result = client.get_health().await.unwrap();
assert!(!result, "health should be false for unreachable host");
}
#[tokio::test]
async fn status_fails_for_unreachable_host() {
let client = GatewayClient::new("http://127.0.0.1:1", None);
let result = client.get_status().await;
assert!(result.is_err(), "status should fail for unreachable host");
}
#[tokio::test]
async fn devices_fails_for_unreachable_host() {
let client = GatewayClient::new("http://127.0.0.1:1", None);
let result = client.get_devices().await;
assert!(result.is_err(), "devices should fail for unreachable host");
}
#[tokio::test]
async fn pairing_fails_for_unreachable_host() {
let client = GatewayClient::new("http://127.0.0.1:1", None);
let result = client.initiate_pairing().await;
assert!(result.is_err(), "pairing should fail for unreachable host");
}
#[tokio::test]
async fn webhook_fails_for_unreachable_host() {
let client = GatewayClient::new("http://127.0.0.1:1", None);
let result = client.send_webhook_message("hello").await;
assert!(result.is_err(), "webhook should fail for unreachable host");
}
}

View File

@ -1,40 +0,0 @@
//! Background health polling for the ZeroClaw gateway.
use crate::gateway_client::GatewayClient;
use crate::state::SharedState;
use crate::tray::icon;
use std::time::Duration;
use tauri::{AppHandle, Emitter, Runtime};
const POLL_INTERVAL: Duration = Duration::from_secs(5);
/// Spawn a background task that polls gateway health and updates state + tray.
pub fn spawn_health_poller<R: Runtime>(app: AppHandle<R>, state: SharedState) {
tauri::async_runtime::spawn(async move {
loop {
let (url, token) = {
let s = state.read().await;
(s.gateway_url.clone(), s.token.clone())
};
let client = GatewayClient::new(&url, token.as_deref());
let healthy = client.get_health().await.unwrap_or(false);
let (connected, agent_status) = {
let mut s = state.write().await;
s.connected = healthy;
(s.connected, s.agent_status)
};
// Update the tray icon and tooltip to reflect current state.
if let Some(tray) = app.tray_by_id("main") {
let _ = tray.set_icon(Some(icon::icon_for_state(connected, agent_status)));
let _ = tray.set_tooltip(Some(icon::tooltip_for_state(connected, agent_status)));
}
let _ = app.emit("zeroclaw://status-changed", healthy);
tokio::time::sleep(POLL_INTERVAL).await;
}
});
}

View File

@ -1,136 +0,0 @@
//! ZeroClaw Desktop — Tauri application library.
pub mod commands;
pub mod gateway_client;
pub mod health;
pub mod state;
pub mod tray;
use gateway_client::GatewayClient;
use state::shared_state;
use tauri::{Manager, RunEvent};
/// Attempt to auto-pair with the gateway so the WebView has a valid token
/// before the React frontend mounts. Runs on localhost so the admin endpoints
/// are accessible without auth.
async fn auto_pair(state: &state::SharedState) -> Option<String> {
let url = {
let s = state.read().await;
s.gateway_url.clone()
};
let client = GatewayClient::new(&url, None);
// Check if gateway is reachable and requires pairing.
if !client.requires_pairing().await.unwrap_or(false) {
return None; // Pairing disabled — no token needed.
}
// Check if we already have a valid token in state.
{
let s = state.read().await;
if let Some(ref token) = s.token {
let authed = GatewayClient::new(&url, Some(token));
if authed.validate_token().await.unwrap_or(false) {
return Some(token.clone()); // Existing token is valid.
}
}
}
// No valid token — auto-pair by requesting a new code and exchanging it.
let client = GatewayClient::new(&url, None);
match client.auto_pair().await {
Ok(token) => {
let mut s = state.write().await;
s.token = Some(token.clone());
Some(token)
}
Err(_) => None, // Gateway may not be ready yet; health poller will retry.
}
}
/// Inject a bearer token into the WebView's localStorage so the React app
/// skips the pairing dialog. Uses Tauri's WebviewWindow scripting API.
fn inject_token_into_webview<R: tauri::Runtime>(window: &tauri::WebviewWindow<R>, token: &str) {
let escaped = token.replace('\\', "\\\\").replace('\'', "\\'");
let script = format!("localStorage.setItem('zeroclaw_token', '{escaped}')");
// WebviewWindow scripting is the standard Tauri API for running JS in the WebView.
let _ = window.eval(&script);
}
/// Set the macOS dock icon programmatically so it shows even in dev builds
/// (which don't have a proper .app bundle).
#[cfg(target_os = "macos")]
fn set_dock_icon() {
use objc2::{AnyThread, MainThreadMarker};
use objc2_app_kit::NSApplication;
use objc2_app_kit::NSImage;
use objc2_foundation::NSData;
let icon_bytes = include_bytes!("../icons/128x128.png");
// Safety: setup() runs on the main thread in Tauri.
let mtm = unsafe { MainThreadMarker::new_unchecked() };
let data = NSData::with_bytes(icon_bytes);
if let Some(image) = NSImage::initWithData(NSImage::alloc(), &data) {
let app = NSApplication::sharedApplication(mtm);
unsafe { app.setApplicationIconImage(Some(&image)) };
}
}
/// Configure and run the Tauri application.
pub fn run() {
let shared = shared_state();
tauri::Builder::default()
.plugin(tauri_plugin_shell::init())
.plugin(tauri_plugin_store::Builder::default().build())
.plugin(tauri_plugin_single_instance::init(|app, _args, _cwd| {
// When a second instance launches, focus the existing window.
if let Some(window) = app.get_webview_window("main") {
let _ = window.show();
let _ = window.set_focus();
}
}))
.manage(shared.clone())
.invoke_handler(tauri::generate_handler![
commands::gateway::get_status,
commands::gateway::get_health,
commands::channels::list_channels,
commands::pairing::initiate_pairing,
commands::pairing::get_devices,
commands::agent::send_message,
])
.setup(move |app| {
// Set macOS dock icon (needed for dev builds without .app bundle).
#[cfg(target_os = "macos")]
set_dock_icon();
// Set up the system tray.
let _ = tray::setup_tray(app);
// Auto-pair with gateway and inject token into the WebView.
let app_handle = app.handle().clone();
let pair_state = shared.clone();
tauri::async_runtime::spawn(async move {
if let Some(token) = auto_pair(&pair_state).await {
if let Some(window) = app_handle.get_webview_window("main") {
inject_token_into_webview(&window, &token);
}
}
});
// Start background health polling.
health::spawn_health_poller(app.handle().clone(), shared.clone());
Ok(())
})
.build(tauri::generate_context!())
.expect("error while building tauri application")
.run(|_app, event| {
// Keep the app running in the background when all windows are closed.
// This is the standard pattern for menu bar / tray apps.
if let RunEvent::ExitRequested { api, .. } = event {
api.prevent_exit();
}
});
}

View File

@ -1,8 +0,0 @@
//! ZeroClaw Desktop — main entry point.
//!
//! Prevents an additional console window on Windows in release.
#![cfg_attr(not(debug_assertions), windows_subsystem = "windows")]
fn main() {
zeroclaw_desktop::run();
}

View File

@ -1,6 +0,0 @@
//! Mobile entry point for ZeroClaw Desktop (iOS/Android).
#[tauri::mobile_entry_point]
fn main() {
zeroclaw_desktop::run();
}

View File

@ -1,99 +0,0 @@
//! Shared application state for Tauri.
use std::sync::Arc;
use tokio::sync::RwLock;
/// Agent status as reported by the gateway.
#[derive(Debug, Clone, Copy, PartialEq, Eq, serde::Serialize)]
#[serde(rename_all = "snake_case")]
pub enum AgentStatus {
Idle,
Working,
Error,
}
/// Shared application state behind an `Arc<RwLock<_>>`.
#[derive(Debug, Clone)]
pub struct AppState {
pub gateway_url: String,
pub token: Option<String>,
pub connected: bool,
pub agent_status: AgentStatus,
}
impl Default for AppState {
fn default() -> Self {
Self {
gateway_url: "http://127.0.0.1:42617".to_string(),
token: None,
connected: false,
agent_status: AgentStatus::Idle,
}
}
}
/// Thread-safe wrapper around `AppState`.
pub type SharedState = Arc<RwLock<AppState>>;
/// Create the default shared state.
pub fn shared_state() -> SharedState {
Arc::new(RwLock::new(AppState::default()))
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn default_state() {
let state = AppState::default();
assert_eq!(state.gateway_url, "http://127.0.0.1:42617");
assert!(state.token.is_none());
assert!(!state.connected);
assert_eq!(state.agent_status, AgentStatus::Idle);
}
#[test]
fn shared_state_is_cloneable() {
let s1 = shared_state();
let s2 = s1.clone();
// Both references point to the same allocation.
assert!(Arc::ptr_eq(&s1, &s2));
}
#[tokio::test]
async fn shared_state_concurrent_read_write() {
let state = shared_state();
// Write from one handle.
{
let mut s = state.write().await;
s.connected = true;
s.agent_status = AgentStatus::Working;
s.token = Some("zc_test".to_string());
}
// Read from cloned handle.
let state2 = state.clone();
let s = state2.read().await;
assert!(s.connected);
assert_eq!(s.agent_status, AgentStatus::Working);
assert_eq!(s.token.as_deref(), Some("zc_test"));
}
#[test]
fn agent_status_serialization() {
assert_eq!(
serde_json::to_string(&AgentStatus::Idle).unwrap(),
"\"idle\""
);
assert_eq!(
serde_json::to_string(&AgentStatus::Working).unwrap(),
"\"working\""
);
assert_eq!(
serde_json::to_string(&AgentStatus::Error).unwrap(),
"\"error\""
);
}
}

View File

@ -1,25 +0,0 @@
//! Tray menu event handling.
use tauri::{menu::MenuEvent, AppHandle, Manager, Runtime};
pub fn handle_menu_event<R: Runtime>(app: &AppHandle<R>, event: MenuEvent) {
match event.id().as_ref() {
"show" => show_main_window(app, None),
"chat" => show_main_window(app, Some("/agent")),
"quit" => {
app.exit(0);
}
_ => {}
}
}
fn show_main_window<R: Runtime>(app: &AppHandle<R>, navigate_to: Option<&str>) {
if let Some(window) = app.get_webview_window("main") {
let _ = window.show();
let _ = window.set_focus();
if let Some(path) = navigate_to {
let script = format!("window.location.hash = '{path}'");
let _ = window.eval(&script);
}
}
}

View File

@ -1,105 +0,0 @@
//! Tray icon management — swap icon based on connection/agent status.
use crate::state::AgentStatus;
use tauri::image::Image;
/// Embedded tray icon PNGs (22x22, RGBA).
const ICON_IDLE: &[u8] = include_bytes!("../../icons/tray-idle.png");
const ICON_WORKING: &[u8] = include_bytes!("../../icons/tray-working.png");
const ICON_ERROR: &[u8] = include_bytes!("../../icons/tray-error.png");
const ICON_DISCONNECTED: &[u8] = include_bytes!("../../icons/tray-disconnected.png");
/// Select the appropriate tray icon for the current state.
pub fn icon_for_state(connected: bool, status: AgentStatus) -> Image<'static> {
let bytes: &[u8] = if !connected {
ICON_DISCONNECTED
} else {
match status {
AgentStatus::Idle => ICON_IDLE,
AgentStatus::Working => ICON_WORKING,
AgentStatus::Error => ICON_ERROR,
}
};
Image::from_bytes(bytes).expect("embedded tray icon is a valid PNG")
}
/// Tooltip text for the current state.
pub fn tooltip_for_state(connected: bool, status: AgentStatus) -> &'static str {
if !connected {
return "ZeroClaw — Disconnected";
}
match status {
AgentStatus::Idle => "ZeroClaw — Idle",
AgentStatus::Working => "ZeroClaw — Working",
AgentStatus::Error => "ZeroClaw — Error",
}
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn icon_disconnected_when_not_connected() {
// Should not panic — icon bytes are valid PNGs.
let _img = icon_for_state(false, AgentStatus::Idle);
let _img = icon_for_state(false, AgentStatus::Working);
let _img = icon_for_state(false, AgentStatus::Error);
}
#[test]
fn icon_connected_variants() {
let _idle = icon_for_state(true, AgentStatus::Idle);
let _working = icon_for_state(true, AgentStatus::Working);
let _error = icon_for_state(true, AgentStatus::Error);
}
#[test]
fn tooltip_disconnected() {
assert_eq!(
tooltip_for_state(false, AgentStatus::Idle),
"ZeroClaw — Disconnected"
);
// Agent status is irrelevant when disconnected.
assert_eq!(
tooltip_for_state(false, AgentStatus::Working),
"ZeroClaw — Disconnected"
);
assert_eq!(
tooltip_for_state(false, AgentStatus::Error),
"ZeroClaw — Disconnected"
);
}
#[test]
fn tooltip_connected_variants() {
assert_eq!(
tooltip_for_state(true, AgentStatus::Idle),
"ZeroClaw — Idle"
);
assert_eq!(
tooltip_for_state(true, AgentStatus::Working),
"ZeroClaw — Working"
);
assert_eq!(
tooltip_for_state(true, AgentStatus::Error),
"ZeroClaw — Error"
);
}
#[test]
fn embedded_icons_are_valid_png() {
// Verify the PNG signature (first 8 bytes) of each embedded icon.
let png_sig: &[u8] = &[0x89, b'P', b'N', b'G', 0x0D, 0x0A, 0x1A, 0x0A];
assert!(ICON_IDLE.starts_with(png_sig), "idle icon not valid PNG");
assert!(
ICON_WORKING.starts_with(png_sig),
"working icon not valid PNG"
);
assert!(ICON_ERROR.starts_with(png_sig), "error icon not valid PNG");
assert!(
ICON_DISCONNECTED.starts_with(png_sig),
"disconnected icon not valid PNG"
);
}
}

View File

@ -1,19 +0,0 @@
//! Tray menu construction.
use tauri::{
menu::{Menu, MenuItemBuilder, PredefinedMenuItem},
App, Runtime,
};
pub fn create_tray_menu<R: Runtime>(app: &App<R>) -> Result<Menu<R>, tauri::Error> {
let show = MenuItemBuilder::with_id("show", "Show Dashboard").build(app)?;
let chat = MenuItemBuilder::with_id("chat", "Agent Chat").build(app)?;
let sep1 = PredefinedMenuItem::separator(app)?;
let status = MenuItemBuilder::with_id("status", "Status: Checking...")
.enabled(false)
.build(app)?;
let sep2 = PredefinedMenuItem::separator(app)?;
let quit = MenuItemBuilder::with_id("quit", "Quit ZeroClaw").build(app)?;
Menu::with_items(app, &[&show, &chat, &sep1, &status, &sep2, &quit])
}

View File

@ -1,34 +0,0 @@
//! System tray integration for ZeroClaw Desktop.
pub mod events;
pub mod icon;
pub mod menu;
use tauri::{
tray::{TrayIcon, TrayIconBuilder, TrayIconEvent},
App, Manager, Runtime,
};
/// Set up the system tray icon and menu.
pub fn setup_tray<R: Runtime>(app: &App<R>) -> Result<TrayIcon<R>, tauri::Error> {
let menu = menu::create_tray_menu(app)?;
TrayIconBuilder::with_id("main")
.tooltip("ZeroClaw — Disconnected")
.icon(icon::icon_for_state(false, crate::state::AgentStatus::Idle))
.menu(&menu)
.show_menu_on_left_click(false)
.on_menu_event(events::handle_menu_event)
.on_tray_icon_event(|tray, event| {
if let TrayIconEvent::Click { button, .. } = event {
if button == tauri::tray::MouseButton::Left {
let app = tray.app_handle();
if let Some(window) = app.get_webview_window("main") {
let _ = window.show();
let _ = window.set_focus();
}
}
}
})
.build(app)
}

View File

@ -1,35 +0,0 @@
{
"$schema": "https://raw.githubusercontent.com/tauri-apps/tauri/dev/crates/tauri-cli/config.schema.json",
"productName": "ZeroClaw",
"version": "0.6.1",
"identifier": "ai.zeroclawlabs.desktop",
"build": {
"devUrl": "http://127.0.0.1:42617/_app/",
"frontendDist": "http://127.0.0.1:42617/_app/"
},
"app": {
"windows": [
{
"title": "ZeroClaw",
"width": 1200,
"height": 800,
"resizable": true,
"fullscreen": false,
"visible": false
}
],
"security": {
"csp": "default-src 'self' http://127.0.0.1:* ws://127.0.0.1:*; connect-src 'self' http://127.0.0.1:* ws://127.0.0.1:*; script-src 'self' 'unsafe-inline' http://127.0.0.1:*; style-src 'self' 'unsafe-inline' http://127.0.0.1:*; img-src 'self' http://127.0.0.1:* data:"
}
},
"bundle": {
"active": true,
"targets": "all",
"icon": [
"icons/32x32.png",
"icons/128x128.png",
"icons/icon.icns",
"icons/icon.ico"
]
}
}

View File

@ -263,7 +263,7 @@ fn bench_memory_operations(c: &mut Criterion) {
c.bench_function("memory_recall_top10", |b| {
b.iter(|| {
rt.block_on(async {
mem.recall(black_box("zeroclaw agent"), 10, None, None, None)
mem.recall(black_box("zeroclaw agent"), 10, None)
.await
.unwrap()
})

View File

@ -11,7 +11,6 @@ fn main() {
println!("cargo:rerun-if-changed=web/src");
println!("cargo:rerun-if-changed=web/public");
println!("cargo:rerun-if-changed=web/index.html");
println!("cargo:rerun-if-changed=docs/assets/zeroclaw-trans.png");
println!("cargo:rerun-if-changed=web/package.json");
println!("cargo:rerun-if-changed=web/package-lock.json");
println!("cargo:rerun-if-changed=web/tsconfig.json");
@ -84,7 +83,6 @@ fn main() {
}
ensure_dist_dir(dist_dir);
ensure_dashboard_assets(dist_dir);
}
fn web_build_required(web_dir: &Path, dist_dir: &Path) -> bool {
@ -138,24 +136,6 @@ fn ensure_dist_dir(dist_dir: &Path) {
}
}
fn ensure_dashboard_assets(dist_dir: &Path) {
// The Rust gateway serves `web/dist/` via rust-embed under `/_app/*`.
// Some builds may end up with missing/blank logo assets, so we ensure the
// expected image is always present in `web/dist/` at compile time.
let src = Path::new("docs/assets/zeroclaw-trans.png");
if !src.exists() {
eprintln!(
"cargo:warning=docs/assets/zeroclaw-trans.png not found; skipping dashboard asset copy"
);
return;
}
let dst = dist_dir.join("zeroclaw-trans.png");
if let Err(e) = fs::copy(src, &dst) {
eprintln!("cargo:warning=Failed to copy zeroclaw-trans.png into web/dist/: {e}");
}
}
/// Locate the `npm` binary on the system PATH.
fn which_npm() -> Result<String, ()> {
let cmd = if cfg!(target_os = "windows") {

View File

@ -1,25 +0,0 @@
[package]
name = "aardvark-sys"
version = "0.1.0"
edition = "2021"
authors = ["theonlyhennygod"]
license = "MIT OR Apache-2.0"
description = "Low-level bindings for the Total Phase Aardvark I2C/SPI/GPIO USB adapter"
repository = "https://github.com/zeroclaw-labs/zeroclaw"
# NOTE: This crate is the ONLY place in ZeroClaw where unsafe code is permitted.
# The rest of the workspace remains #![forbid(unsafe_code)].
#
# Stub implementation: the Total Phase SDK (aardvark.h + aardvark.so) is NOT
# yet committed. All AardvarkHandle methods return Err(AardvarkError::NotFound)
# at runtime. No unsafe code is needed for the stub.
#
# To enable real hardware (once SDK files are in vendor/):
# 1. Add `bindgen = "0.69"` to [build-dependencies]
# 2. Add `libc = "0.2"` to [dependencies]
# 3. Uncomment the build.rs bindgen call
# 4. Replace stub method bodies with FFI calls via mod bindings
[dependencies]
libloading = "0.8"
thiserror = "2.0"

View File

@ -1,27 +0,0 @@
//! Build script for aardvark-sys.
//!
//! # SDK present (real hardware)
//! When the Total Phase SDK files are in `vendor/`:
//! - Sets linker search path for aardvark.so
//! - Generates src/bindings.rs via bindgen
//!
//! # SDK absent (stub)
//! Does nothing. All AardvarkHandle methods return errors at runtime.
fn main() {
// Stub: SDK not yet in vendor/
// Uncomment and fill in when aardvark.h + aardvark.so are available:
//
// println!("cargo:rustc-link-search=native=crates/aardvark-sys/vendor");
// println!("cargo:rustc-link-lib=dylib=aardvark");
// println!("cargo:rerun-if-changed=vendor/aardvark.h");
//
// let bindings = bindgen::Builder::default()
// .header("vendor/aardvark.h")
// .parse_callbacks(Box::new(bindgen::CargoCallbacks::new()))
// .generate()
// .expect("Unable to generate aardvark bindings");
// bindings
// .write_to_file("src/bindings.rs")
// .expect("Could not write bindings");
}

View File

@ -1,475 +0,0 @@
//! Bindings for the Total Phase Aardvark I2C/SPI/GPIO USB adapter.
//!
//! Uses [`libloading`] to load `aardvark.so` at runtime — the same pattern
//! the official Total Phase C stub (`aardvark.c`) uses internally.
//!
//! # Library search order
//!
//! 1. `ZEROCLAW_AARDVARK_LIB` environment variable (full path to `aardvark.so`)
//! 2. `<workspace>/crates/aardvark-sys/vendor/aardvark.so` (development default)
//! 3. `./aardvark.so` (next to the binary, for deployment)
//!
//! If none resolve, every method returns
//! [`Err(AardvarkError::LibraryNotFound)`](AardvarkError::LibraryNotFound).
//!
//! # Safety
//!
//! This crate is the **only** place in ZeroClaw where `unsafe` is permitted.
//! All `unsafe` is confined to `extern "C"` call sites inside this file.
//! The public API is fully safe Rust.
use std::path::PathBuf;
use std::sync::OnceLock;
use libloading::{Library, Symbol};
use thiserror::Error;
// ── Constants from aardvark.h ─────────────────────────────────────────────
/// Bit set on a port returned by `aa_find_devices` when that port is in use.
const AA_PORT_NOT_FREE: u16 = 0x8000;
/// Configure adapter for I2C + GPIO (I2C master mode, SPI disabled).
const AA_CONFIG_GPIO_I2C: i32 = 0x02;
/// Configure adapter for SPI + GPIO (SPI master mode, I2C disabled).
const AA_CONFIG_SPI_GPIO: i32 = 0x01;
/// No I2C flags (standard 7-bit addressing, normal stop condition).
const AA_I2C_NO_FLAGS: i32 = 0x00;
/// Enable both onboard I2C pullup resistors (hardware v2+ only).
const AA_I2C_PULLUP_BOTH: u8 = 0x03;
// ── Library loading ───────────────────────────────────────────────────────
static AARDVARK_LIB: OnceLock<Option<Library>> = OnceLock::new();
fn lib() -> Option<&'static Library> {
AARDVARK_LIB
.get_or_init(|| {
let candidates: Vec<PathBuf> = vec![
// 1. Explicit env-var override (full path)
std::env::var("ZEROCLAW_AARDVARK_LIB")
.ok()
.map(PathBuf::from)
.unwrap_or_default(),
// 2. Vendor directory shipped with this crate (dev default)
{
let mut p = PathBuf::from(env!("CARGO_MANIFEST_DIR"));
p.push("vendor/aardvark.so");
p
},
// 3. Next to the running binary (deployment)
std::env::current_exe()
.ok()
.and_then(|e| e.parent().map(|d| d.join("aardvark.so")))
.unwrap_or_default(),
// 4. Current working directory
PathBuf::from("aardvark.so"),
];
let mut tried_any = false;
for path in &candidates {
if path.as_os_str().is_empty() {
continue;
}
tried_any = true;
match unsafe { Library::new(path) } {
Ok(lib) => {
// Verify the .so exports aa_c_version (Total Phase version gate).
// The .so exports c_aa_* symbols (not aa_*); aa_c_version is the
// one non-prefixed symbol used to confirm library identity.
let version_ok = unsafe {
lib.get::<unsafe extern "C" fn() -> u32>(b"aa_c_version\0").is_ok()
};
if !version_ok {
eprintln!(
"[aardvark-sys] {} loaded but aa_c_version not found — \
not a valid Aardvark library, skipping",
path.display()
);
continue;
}
eprintln!("[aardvark-sys] loaded library from {}", path.display());
return Some(lib);
}
Err(e) => {
let msg = e.to_string();
// Surface architecture mismatch explicitly — the most common
// failure on Apple Silicon machines with an x86_64 SDK.
if msg.contains("incompatible architecture") || msg.contains("mach-o file") {
eprintln!(
"[aardvark-sys] ARCHITECTURE MISMATCH loading {}: {}\n\
[aardvark-sys] The vendored aardvark.so is x86_64 but this \
binary is {}.\n\
[aardvark-sys] Download the arm64 SDK from https://www.totalphase.com/downloads/ \
or build with --target x86_64-apple-darwin.",
path.display(),
msg,
std::env::consts::ARCH,
);
} else {
eprintln!(
"[aardvark-sys] could not load {}: {}",
path.display(),
msg
);
}
}
}
}
if !tried_any {
eprintln!("[aardvark-sys] no library candidates found; set ZEROCLAW_AARDVARK_LIB or place aardvark.so next to the binary");
}
None
})
.as_ref()
}
/// Errors returned by Aardvark hardware operations.
#[derive(Debug, Error)]
pub enum AardvarkError {
/// No Aardvark adapter found — adapter not plugged in.
#[error("Aardvark adapter not found — is it plugged in?")]
NotFound,
/// `aa_open` returned a non-positive handle.
#[error("Aardvark open failed (code {0})")]
OpenFailed(i32),
/// `aa_i2c_write` returned a negative status code.
#[error("I2C write failed (code {0})")]
I2cWriteFailed(i32),
/// `aa_i2c_read` returned a negative status code.
#[error("I2C read failed (code {0})")]
I2cReadFailed(i32),
/// `aa_spi_write` returned a negative status code.
#[error("SPI transfer failed (code {0})")]
SpiTransferFailed(i32),
/// GPIO operation returned a negative status code.
#[error("GPIO error (code {0})")]
GpioError(i32),
/// `aardvark.so` could not be found or loaded.
#[error("aardvark.so not found — set ZEROCLAW_AARDVARK_LIB or place it next to the binary")]
LibraryNotFound,
}
/// Convenience `Result` alias for this crate.
pub type Result<T> = std::result::Result<T, AardvarkError>;
// ── Handle ────────────────────────────────────────────────────────────────
/// Safe RAII handle over the Aardvark C library handle.
///
/// Automatically closes the adapter on `Drop`.
///
/// **Usage pattern:** open a fresh handle per command and let it drop at the
/// end of each operation (lazy-open / eager-close).
pub struct AardvarkHandle {
handle: i32,
}
impl AardvarkHandle {
// ── Lifecycle ─────────────────────────────────────────────────────────
/// Open the first available (free) Aardvark adapter.
pub fn open() -> Result<Self> {
let ports = Self::find_devices();
let port = ports.first().copied().ok_or(AardvarkError::NotFound)?;
Self::open_port(i32::from(port))
}
/// Open a specific Aardvark adapter by port index.
pub fn open_port(port: i32) -> Result<Self> {
let lib = lib().ok_or(AardvarkError::LibraryNotFound)?;
let handle: i32 = unsafe {
let f: Symbol<unsafe extern "C" fn(i32) -> i32> = lib
.get(b"c_aa_open\0")
.map_err(|_| AardvarkError::LibraryNotFound)?;
f(port)
};
if handle <= 0 {
Err(AardvarkError::OpenFailed(handle))
} else {
Ok(Self { handle })
}
}
/// Return the port numbers of all **free** connected adapters.
///
/// Ports in-use by another process are filtered out.
/// Returns an empty `Vec` when `aardvark.so` cannot be loaded.
pub fn find_devices() -> Vec<u16> {
let Some(lib) = lib() else {
eprintln!("[aardvark-sys] find_devices: library not loaded");
return Vec::new();
};
let mut ports = [0u16; 16];
let n: i32 = unsafe {
let f: std::result::Result<Symbol<unsafe extern "C" fn(i32, *mut u16) -> i32>, _> =
lib.get(b"c_aa_find_devices\0");
match f {
Ok(f) => f(16, ports.as_mut_ptr()),
Err(e) => {
eprintln!("[aardvark-sys] find_devices: symbol lookup failed: {e}");
return Vec::new();
}
}
};
eprintln!(
"[aardvark-sys] find_devices: c_aa_find_devices returned {n}, ports={:?}",
&ports[..n.max(0) as usize]
);
if n <= 0 {
return Vec::new();
}
let free: Vec<u16> = ports[..n as usize]
.iter()
.filter(|&&p| (p & AA_PORT_NOT_FREE) == 0)
.copied()
.collect();
eprintln!("[aardvark-sys] find_devices: free ports={free:?}");
free
}
// ── I2C ───────────────────────────────────────────────────────────────
/// Enable I2C mode and set the bitrate (kHz).
pub fn i2c_enable(&self, bitrate_khz: u32) -> Result<()> {
let lib = lib().ok_or(AardvarkError::LibraryNotFound)?;
unsafe {
let configure: Symbol<unsafe extern "C" fn(i32, i32) -> i32> = lib
.get(b"c_aa_configure\0")
.map_err(|_| AardvarkError::LibraryNotFound)?;
configure(self.handle, AA_CONFIG_GPIO_I2C);
let pullup: Symbol<unsafe extern "C" fn(i32, u8) -> i32> = lib
.get(b"c_aa_i2c_pullup\0")
.map_err(|_| AardvarkError::LibraryNotFound)?;
pullup(self.handle, AA_I2C_PULLUP_BOTH);
let bitrate: Symbol<unsafe extern "C" fn(i32, i32) -> i32> = lib
.get(b"c_aa_i2c_bitrate\0")
.map_err(|_| AardvarkError::LibraryNotFound)?;
bitrate(self.handle, bitrate_khz as i32);
}
Ok(())
}
/// Write `data` bytes to the I2C device at `addr`.
pub fn i2c_write(&self, addr: u8, data: &[u8]) -> Result<()> {
let lib = lib().ok_or(AardvarkError::LibraryNotFound)?;
let ret: i32 = unsafe {
let f: Symbol<unsafe extern "C" fn(i32, u16, i32, u16, *const u8) -> i32> = lib
.get(b"c_aa_i2c_write\0")
.map_err(|_| AardvarkError::LibraryNotFound)?;
f(
self.handle,
u16::from(addr),
AA_I2C_NO_FLAGS,
data.len() as u16,
data.as_ptr(),
)
};
if ret < 0 {
Err(AardvarkError::I2cWriteFailed(ret))
} else {
Ok(())
}
}
/// Read `len` bytes from the I2C device at `addr`.
pub fn i2c_read(&self, addr: u8, len: usize) -> Result<Vec<u8>> {
let lib = lib().ok_or(AardvarkError::LibraryNotFound)?;
let mut buf = vec![0u8; len];
let ret: i32 = unsafe {
let f: Symbol<unsafe extern "C" fn(i32, u16, i32, u16, *mut u8) -> i32> = lib
.get(b"c_aa_i2c_read\0")
.map_err(|_| AardvarkError::LibraryNotFound)?;
f(
self.handle,
u16::from(addr),
AA_I2C_NO_FLAGS,
len as u16,
buf.as_mut_ptr(),
)
};
if ret < 0 {
Err(AardvarkError::I2cReadFailed(ret))
} else {
Ok(buf)
}
}
/// Write then read — standard I2C register-read pattern.
pub fn i2c_write_read(&self, addr: u8, write_data: &[u8], read_len: usize) -> Result<Vec<u8>> {
self.i2c_write(addr, write_data)?;
self.i2c_read(addr, read_len)
}
/// Scan the I2C bus, returning addresses of all responding devices.
///
/// Probes `0x080x77` with a 1-byte read; returns addresses that ACK.
pub fn i2c_scan(&self) -> Vec<u8> {
let Some(lib) = lib() else {
return Vec::new();
};
let Ok(f): std::result::Result<
Symbol<unsafe extern "C" fn(i32, u16, i32, u16, *mut u8) -> i32>,
_,
> = (unsafe { lib.get(b"c_aa_i2c_read\0") }) else {
return Vec::new();
};
let mut found = Vec::new();
let mut buf = [0u8; 1];
for addr in 0x08u16..=0x77 {
let ret = unsafe { f(self.handle, addr, AA_I2C_NO_FLAGS, 1, buf.as_mut_ptr()) };
// ret > 0: bytes received → device ACKed
// ret == 0: NACK → no device at this address
// ret < 0: error code → skip
if ret > 0 {
found.push(addr as u8);
}
}
found
}
// ── SPI ───────────────────────────────────────────────────────────────
/// Enable SPI mode and set the bitrate (kHz).
pub fn spi_enable(&self, bitrate_khz: u32) -> Result<()> {
let lib = lib().ok_or(AardvarkError::LibraryNotFound)?;
unsafe {
let configure: Symbol<unsafe extern "C" fn(i32, i32) -> i32> = lib
.get(b"c_aa_configure\0")
.map_err(|_| AardvarkError::LibraryNotFound)?;
configure(self.handle, AA_CONFIG_SPI_GPIO);
// SPI mode 0: polarity=rising/falling(0), phase=sample/setup(0), MSB first(0)
let spi_cfg: Symbol<unsafe extern "C" fn(i32, i32, i32, i32) -> i32> = lib
.get(b"c_aa_spi_configure\0")
.map_err(|_| AardvarkError::LibraryNotFound)?;
spi_cfg(self.handle, 0, 0, 0);
let bitrate: Symbol<unsafe extern "C" fn(i32, i32) -> i32> = lib
.get(b"c_aa_spi_bitrate\0")
.map_err(|_| AardvarkError::LibraryNotFound)?;
bitrate(self.handle, bitrate_khz as i32);
}
Ok(())
}
/// Full-duplex SPI transfer.
///
/// Sends `send` bytes; returns the simultaneously received bytes (same length).
pub fn spi_transfer(&self, send: &[u8]) -> Result<Vec<u8>> {
let lib = lib().ok_or(AardvarkError::LibraryNotFound)?;
let mut recv = vec![0u8; send.len()];
// aa_spi_write(aardvark, out_num_bytes, data_out, in_num_bytes, data_in)
let ret: i32 = unsafe {
let f: Symbol<unsafe extern "C" fn(i32, u16, *const u8, u16, *mut u8) -> i32> = lib
.get(b"c_aa_spi_write\0")
.map_err(|_| AardvarkError::LibraryNotFound)?;
f(
self.handle,
send.len() as u16,
send.as_ptr(),
recv.len() as u16,
recv.as_mut_ptr(),
)
};
if ret < 0 {
Err(AardvarkError::SpiTransferFailed(ret))
} else {
Ok(recv)
}
}
// ── GPIO ──────────────────────────────────────────────────────────────
/// Set GPIO pin directions and output values.
///
/// `direction`: bitmask — `1` = output, `0` = input.
/// `value`: output state bitmask.
pub fn gpio_set(&self, direction: u8, value: u8) -> Result<()> {
let lib = lib().ok_or(AardvarkError::LibraryNotFound)?;
unsafe {
let dir_f: Symbol<unsafe extern "C" fn(i32, u8) -> i32> = lib
.get(b"c_aa_gpio_direction\0")
.map_err(|_| AardvarkError::LibraryNotFound)?;
let d = dir_f(self.handle, direction);
if d < 0 {
return Err(AardvarkError::GpioError(d));
}
let set_f: Symbol<unsafe extern "C" fn(i32, u8) -> i32> =
lib.get(b"c_aa_gpio_set\0")
.map_err(|_| AardvarkError::LibraryNotFound)?;
let r = set_f(self.handle, value);
if r < 0 {
return Err(AardvarkError::GpioError(r));
}
}
Ok(())
}
/// Read the current GPIO pin states as a bitmask.
pub fn gpio_get(&self) -> Result<u8> {
let lib = lib().ok_or(AardvarkError::LibraryNotFound)?;
let ret: i32 = unsafe {
let f: Symbol<unsafe extern "C" fn(i32) -> i32> = lib
.get(b"c_aa_gpio_get\0")
.map_err(|_| AardvarkError::LibraryNotFound)?;
f(self.handle)
};
if ret < 0 {
Err(AardvarkError::GpioError(ret))
} else {
Ok(ret as u8)
}
}
}
impl Drop for AardvarkHandle {
fn drop(&mut self) {
if let Some(lib) = lib() {
unsafe {
if let Ok(f) = lib.get::<unsafe extern "C" fn(i32) -> i32>(b"c_aa_close\0") {
f(self.handle);
}
}
}
}
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn find_devices_does_not_panic() {
// With no adapter plugged in, must return empty without panicking.
let _ = AardvarkHandle::find_devices();
}
#[test]
fn open_returns_error_or_ok_depending_on_hardware() {
// With hardware connected: open() succeeds (Ok).
// Without hardware: returns LibraryNotFound, NotFound, or OpenFailed — any Err is fine.
// Both outcomes are valid; the important thing is no panic.
let _ = AardvarkHandle::open();
}
#[test]
fn open_port_returns_error_when_no_hardware() {
// Port 99 doesn't exist — must return an error regardless of whether hardware is connected.
assert!(AardvarkHandle::open_port(99).is_err());
}
#[test]
fn error_display_messages_are_human_readable() {
assert!(AardvarkError::NotFound
.to_string()
.to_lowercase()
.contains("not found"));
assert!(AardvarkError::OpenFailed(-1).to_string().contains("-1"));
assert!(AardvarkError::I2cWriteFailed(-3)
.to_string()
.contains("I2C write"));
assert!(AardvarkError::SpiTransferFailed(-2)
.to_string()
.contains("SPI"));
assert!(AardvarkError::LibraryNotFound
.to_string()
.contains("aardvark.so"));
}
}

View File

@ -1,919 +0,0 @@
/*=========================================================================
| Aardvark Interface Library
|--------------------------------------------------------------------------
| Copyright (c) 2003-2024 Total Phase, Inc.
| All rights reserved.
| www.totalphase.com
|
| Redistribution and use of this file in source and binary forms, with
| or without modification, are permitted provided that the following
| conditions are met:
|
| - Redistributions of source code must retain the above copyright
| notice, this list of conditions, and the following disclaimer.
|
| - Redistributions in binary form must reproduce the above copyright
| notice, this list of conditions, and the following disclaimer in the
| documentation or other materials provided with the distribution.
|
| - This file must only be used to interface with Total Phase products.
| The names of Total Phase and its contributors must not be used to
| endorse or promote products derived from this software.
|
| THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
| "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING BUT NOT
| LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
| FOR A PARTICULAR PURPOSE, ARE DISCLAIMED. IN NO EVENT WILL THE
| COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
| INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING
| BUT NOT LIMITED TO PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
| LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
| CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
| LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
| ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
| POSSIBILITY OF SUCH DAMAGE.
|--------------------------------------------------------------------------
| To access Total Phase Aardvark devices through the API:
|
| 1) Use one of the following shared objects:
| aardvark.so -- Linux or macOS shared object
| aardvark.dll -- Windows dynamic link library
|
| 2) Along with one of the following language modules:
| aardvark.c/h -- C/C++ API header file and interface module
| aardvark_py.py -- Python API
| aardvark.cs -- C# .NET source
| aardvark_net.dll -- Compiled .NET binding
| aardvark.bas -- Visual Basic 6 API
========================================================================*/
#ifndef __aardvark_h__
#define __aardvark_h__
#ifdef __cplusplus
extern "C" {
#endif
/*=========================================================================
| TYPEDEFS
========================================================================*/
#ifndef TOTALPHASE_DATA_TYPES
#define TOTALPHASE_DATA_TYPES
#ifndef _MSC_VER
/* C99-compliant compilers (GCC) */
#include <stdint.h>
typedef uint8_t u08;
typedef uint16_t u16;
typedef uint32_t u32;
typedef uint64_t u64;
typedef int8_t s08;
typedef int16_t s16;
typedef int32_t s32;
typedef int64_t s64;
#else
/* Microsoft compilers (Visual C++) */
typedef unsigned __int8 u08;
typedef unsigned __int16 u16;
typedef unsigned __int32 u32;
typedef unsigned __int64 u64;
typedef signed __int8 s08;
typedef signed __int16 s16;
typedef signed __int32 s32;
typedef signed __int64 s64;
#endif /* __MSC_VER */
typedef float f32;
typedef double f64;
#endif /* TOTALPHASE_DATA_TYPES */
/*=========================================================================
| DEBUG
========================================================================*/
/* Set the following macro to '1' for debugging */
#define AA_DEBUG 0
/*=========================================================================
| VERSION
========================================================================*/
#define AA_HEADER_VERSION 0x0600 /* v6.00 */
/*=========================================================================
| STATUS CODES
========================================================================*/
/*
* All API functions return an integer which is the result of the
* transaction, or a status code if negative. The status codes are
* defined as follows:
*/
enum AardvarkStatus {
/* General codes (0 to -99) */
AA_OK = 0,
AA_UNABLE_TO_LOAD_LIBRARY = -1,
AA_UNABLE_TO_LOAD_DRIVER = -2,
AA_UNABLE_TO_LOAD_FUNCTION = -3,
AA_INCOMPATIBLE_LIBRARY = -4,
AA_INCOMPATIBLE_DEVICE = -5,
AA_COMMUNICATION_ERROR = -6,
AA_UNABLE_TO_OPEN = -7,
AA_UNABLE_TO_CLOSE = -8,
AA_INVALID_HANDLE = -9,
AA_CONFIG_ERROR = -10,
/* I2C codes (-100 to -199) */
AA_I2C_NOT_AVAILABLE = -100,
AA_I2C_NOT_ENABLED = -101,
AA_I2C_READ_ERROR = -102,
AA_I2C_WRITE_ERROR = -103,
AA_I2C_SLAVE_BAD_CONFIG = -104,
AA_I2C_SLAVE_READ_ERROR = -105,
AA_I2C_SLAVE_TIMEOUT = -106,
AA_I2C_DROPPED_EXCESS_BYTES = -107,
AA_I2C_BUS_ALREADY_FREE = -108,
/* SPI codes (-200 to -299) */
AA_SPI_NOT_AVAILABLE = -200,
AA_SPI_NOT_ENABLED = -201,
AA_SPI_WRITE_ERROR = -202,
AA_SPI_SLAVE_READ_ERROR = -203,
AA_SPI_SLAVE_TIMEOUT = -204,
AA_SPI_DROPPED_EXCESS_BYTES = -205,
/* GPIO codes (-400 to -499) */
AA_GPIO_NOT_AVAILABLE = -400
};
#ifndef __cplusplus
typedef enum AardvarkStatus AardvarkStatus;
#endif
/*=========================================================================
| GENERAL TYPE DEFINITIONS
========================================================================*/
/* Aardvark handle type definition */
typedef int Aardvark;
/*
* Deprecated type definitions.
*
* These are only for use with legacy code and
* should not be used for new development.
*/
typedef u08 aa_u08;
typedef u16 aa_u16;
typedef u32 aa_u32;
typedef s08 aa_s08;
typedef s16 aa_s16;
typedef s32 aa_s32;
/*
* Aardvark version matrix.
*
* This matrix describes the various version dependencies
* of Aardvark components. It can be used to determine
* which component caused an incompatibility error.
*
* All version numbers are of the format:
* (major << 8) | minor
*
* ex. v1.20 would be encoded as: 0x0114
*/
struct AardvarkVersion {
/* Software, firmware, and hardware versions. */
u16 software;
u16 firmware;
u16 hardware;
/* Firmware requires that software must be >= this version. */
u16 sw_req_by_fw;
/* Software requires that firmware must be >= this version. */
u16 fw_req_by_sw;
/* Software requires that the API interface must be >= this version. */
u16 api_req_by_sw;
};
#ifndef __cplusplus
typedef struct AardvarkVersion AardvarkVersion;
#endif
/*=========================================================================
| GENERAL API
========================================================================*/
/*
* Get a list of ports to which Aardvark devices are attached.
*
* nelem = maximum number of elements to return
* devices = array into which the port numbers are returned
*
* Each element of the array is written with the port number.
* Devices that are in-use are ORed with AA_PORT_NOT_FREE (0x8000).
*
* ex. devices are attached to ports 0, 1, 2
* ports 0 and 2 are available, and port 1 is in-use.
* array => 0x0000, 0x8001, 0x0002
*
* If the array is NULL, it is not filled with any values.
* If there are more devices than the array size, only the
* first nmemb port numbers will be written into the array.
*
* Returns the number of devices found, regardless of the
* array size.
*/
#define AA_PORT_NOT_FREE 0x8000
int aa_find_devices (
int num_devices,
u16 * devices
);
/*
* Get a list of ports to which Aardvark devices are attached.
*
* This function is the same as aa_find_devices() except that
* it returns the unique IDs of each Aardvark device. The IDs
* are guaranteed to be non-zero if valid.
*
* The IDs are the unsigned integer representation of the 10-digit
* serial numbers.
*/
int aa_find_devices_ext (
int num_devices,
u16 * devices,
int num_ids,
u32 * unique_ids
);
/*
* Open the Aardvark port.
*
* The port number is a zero-indexed integer.
*
* The port number is the same as that obtained from the
* aa_find_devices() function above.
*
* Returns an Aardvark handle, which is guaranteed to be
* greater than zero if it is valid.
*
* This function is recommended for use in simple applications
* where extended information is not required. For more complex
* applications, the use of aa_open_ext() is recommended.
*/
Aardvark aa_open (
int port_number
);
/*
* Open the Aardvark port, returning extended information
* in the supplied structure. Behavior is otherwise identical
* to aa_open() above. If 0 is passed as the pointer to the
* structure, this function is exactly equivalent to aa_open().
*
* The structure is zeroed before the open is attempted.
* It is filled with whatever information is available.
*
* For example, if the firmware version is not filled, then
* the device could not be queried for its version number.
*
* This function is recommended for use in complex applications
* where extended information is required. For more simple
* applications, the use of aa_open() is recommended.
*/
struct AardvarkExt {
/* Version matrix */
AardvarkVersion version;
/* Features of this device. */
int features;
};
#ifndef __cplusplus
typedef struct AardvarkExt AardvarkExt;
#endif
Aardvark aa_open_ext (
int port_number,
AardvarkExt * aa_ext
);
/* Close the Aardvark port. */
int aa_close (
Aardvark aardvark
);
/*
* Return the port for this Aardvark handle.
*
* The port number is a zero-indexed integer.
*/
int aa_port (
Aardvark aardvark
);
/*
* Return the device features as a bit-mask of values, or
* an error code if the handle is not valid.
*/
#define AA_FEATURE_SPI 0x00000001
#define AA_FEATURE_I2C 0x00000002
#define AA_FEATURE_GPIO 0x00000008
int aa_features (
Aardvark aardvark
);
/*
* Return the unique ID for this Aardvark adapter.
* IDs are guaranteed to be non-zero if valid.
* The ID is the unsigned integer representation of the
* 10-digit serial number.
*/
u32 aa_unique_id (
Aardvark aardvark
);
/*
* Return the status string for the given status code.
* If the code is not valid or the library function cannot
* be loaded, return a NULL string.
*/
const char * aa_status_string (
int status
);
/*
* Enable logging to a file. The handle must be standard file
* descriptor. In C, a file descriptor can be obtained by using
* the ANSI C function "open" or by using the function "fileno"
* on a FILE* stream. A FILE* stream can be obtained using "fopen"
* or can correspond to the common "stdout" or "stderr" --
* available when including stdlib.h
*/
#define AA_LOG_STDOUT 1
#define AA_LOG_STDERR 2
int aa_log (
Aardvark aardvark,
int level,
int handle
);
/*
* Return the version matrix for the device attached to the
* given handle. If the handle is 0 or invalid, only the
* software and required api versions are set.
*/
int aa_version (
Aardvark aardvark,
AardvarkVersion * version
);
/*
* Configure the device by enabling/disabling I2C, SPI, and
* GPIO functions.
*/
enum AardvarkConfig {
AA_CONFIG_GPIO_ONLY = 0x00,
AA_CONFIG_SPI_GPIO = 0x01,
AA_CONFIG_GPIO_I2C = 0x02,
AA_CONFIG_SPI_I2C = 0x03,
AA_CONFIG_QUERY = 0x80
};
#ifndef __cplusplus
typedef enum AardvarkConfig AardvarkConfig;
#endif
#define AA_CONFIG_SPI_MASK 0x00000001
#define AA_CONFIG_I2C_MASK 0x00000002
int aa_configure (
Aardvark aardvark,
AardvarkConfig config
);
/*
* Configure the target power pins.
* This is only supported on hardware versions >= 2.00
*/
#define AA_TARGET_POWER_NONE 0x00
#define AA_TARGET_POWER_BOTH 0x03
#define AA_TARGET_POWER_QUERY 0x80
int aa_target_power (
Aardvark aardvark,
u08 power_mask
);
/*
* Sleep for the specified number of milliseconds
* Accuracy depends on the operating system scheduler
* Returns the number of milliseconds slept
*/
u32 aa_sleep_ms (
u32 milliseconds
);
/*=========================================================================
| ASYNC MESSAGE POLLING
========================================================================*/
/*
* Polling function to check if there are any asynchronous
* messages pending for processing. The function takes a timeout
* value in units of milliseconds. If the timeout is < 0, the
* function will block until data is received. If the timeout is 0,
* the function will perform a non-blocking check.
*/
#define AA_ASYNC_NO_DATA 0x00000000
#define AA_ASYNC_I2C_READ 0x00000001
#define AA_ASYNC_I2C_WRITE 0x00000002
#define AA_ASYNC_SPI 0x00000004
int aa_async_poll (
Aardvark aardvark,
int timeout
);
/*=========================================================================
| I2C API
========================================================================*/
/* Free the I2C bus. */
int aa_i2c_free_bus (
Aardvark aardvark
);
/*
* Set the I2C bit rate in kilohertz. If a zero is passed as the
* bitrate, the bitrate is unchanged and the current bitrate is
* returned.
*/
int aa_i2c_bitrate (
Aardvark aardvark,
int bitrate_khz
);
/*
* Set the bus lock timeout. If a zero is passed as the timeout,
* the timeout is unchanged and the current timeout is returned.
*/
int aa_i2c_bus_timeout (
Aardvark aardvark,
u16 timeout_ms
);
enum AardvarkI2cFlags {
AA_I2C_NO_FLAGS = 0x00,
AA_I2C_10_BIT_ADDR = 0x01,
AA_I2C_COMBINED_FMT = 0x02,
AA_I2C_NO_STOP = 0x04,
AA_I2C_SIZED_READ = 0x10,
AA_I2C_SIZED_READ_EXTRA1 = 0x20
};
#ifndef __cplusplus
typedef enum AardvarkI2cFlags AardvarkI2cFlags;
#endif
/* Read a stream of bytes from the I2C slave device. */
int aa_i2c_read (
Aardvark aardvark,
u16 slave_addr,
AardvarkI2cFlags flags,
u16 num_bytes,
u08 * data_in
);
enum AardvarkI2cStatus {
AA_I2C_STATUS_OK = 0,
AA_I2C_STATUS_BUS_ERROR = 1,
AA_I2C_STATUS_SLA_ACK = 2,
AA_I2C_STATUS_SLA_NACK = 3,
AA_I2C_STATUS_DATA_NACK = 4,
AA_I2C_STATUS_ARB_LOST = 5,
AA_I2C_STATUS_BUS_LOCKED = 6,
AA_I2C_STATUS_LAST_DATA_ACK = 7
};
#ifndef __cplusplus
typedef enum AardvarkI2cStatus AardvarkI2cStatus;
#endif
/*
* Read a stream of bytes from the I2C slave device.
* This API function returns the number of bytes read into
* the num_read variable. The return value of the function
* is a status code.
*/
int aa_i2c_read_ext (
Aardvark aardvark,
u16 slave_addr,
AardvarkI2cFlags flags,
u16 num_bytes,
u08 * data_in,
u16 * num_read
);
/* Write a stream of bytes to the I2C slave device. */
int aa_i2c_write (
Aardvark aardvark,
u16 slave_addr,
AardvarkI2cFlags flags,
u16 num_bytes,
const u08 * data_out
);
/*
* Write a stream of bytes to the I2C slave device.
* This API function returns the number of bytes written into
* the num_written variable. The return value of the function
* is a status code.
*/
int aa_i2c_write_ext (
Aardvark aardvark,
u16 slave_addr,
AardvarkI2cFlags flags,
u16 num_bytes,
const u08 * data_out,
u16 * num_written
);
/*
* Do an atomic write+read to an I2C slave device by first
* writing a stream of bytes to the I2C slave device and then
* reading a stream of bytes back from the same slave device.
* This API function returns the number of bytes written into
* the num_written variable and the number of bytes read into
* the num_read variable. The return value of the function is
* the status given as (read_status << 8) | (write_status).
*/
int aa_i2c_write_read (
Aardvark aardvark,
u16 slave_addr,
AardvarkI2cFlags flags,
u16 out_num_bytes,
const u08 * out_data,
u16 * num_written,
u16 in_num_bytes,
u08 * in_data,
u16 * num_read
);
/* Enable/Disable the Aardvark as an I2C slave device */
int aa_i2c_slave_enable (
Aardvark aardvark,
u08 addr,
u16 maxTxBytes,
u16 maxRxBytes
);
int aa_i2c_slave_disable (
Aardvark aardvark
);
/*
* Set the slave response in the event the Aardvark is put
* into slave mode and contacted by a Master.
*/
int aa_i2c_slave_set_response (
Aardvark aardvark,
u08 num_bytes,
const u08 * data_out
);
/*
* Return number of bytes written from a previous
* Aardvark->I2C_master transmission. Since the transmission is
* happening asynchronously with respect to the PC host
* software, there could be responses queued up from many
* previous write transactions.
*/
int aa_i2c_slave_write_stats (
Aardvark aardvark
);
/* Read the bytes from an I2C slave reception */
int aa_i2c_slave_read (
Aardvark aardvark,
u08 * addr,
u16 num_bytes,
u08 * data_in
);
/* Extended functions that return status code */
int aa_i2c_slave_write_stats_ext (
Aardvark aardvark,
u16 * num_written
);
int aa_i2c_slave_read_ext (
Aardvark aardvark,
u08 * addr,
u16 num_bytes,
u08 * data_in,
u16 * num_read
);
/*
* Configure the I2C pullup resistors.
* This is only supported on hardware versions >= 2.00
*/
#define AA_I2C_PULLUP_NONE 0x00
#define AA_I2C_PULLUP_BOTH 0x03
#define AA_I2C_PULLUP_QUERY 0x80
int aa_i2c_pullup (
Aardvark aardvark,
u08 pullup_mask
);
/*=========================================================================
| SPI API
========================================================================*/
/*
* Set the SPI bit rate in kilohertz. If a zero is passed as the
* bitrate, the bitrate is unchanged and the current bitrate is
* returned.
*/
int aa_spi_bitrate (
Aardvark aardvark,
int bitrate_khz
);
/*
* These configuration parameters specify how to clock the
* bits that are sent and received on the Aardvark SPI
* interface.
*
* The polarity option specifies which transition
* constitutes the leading edge and which transition is the
* falling edge. For example, AA_SPI_POL_RISING_FALLING
* would configure the SPI to idle the SCK clock line low.
* The clock would then transition low-to-high on the
* leading edge and high-to-low on the trailing edge.
*
* The phase option determines whether to sample or setup on
* the leading edge. For example, AA_SPI_PHASE_SAMPLE_SETUP
* would configure the SPI to sample on the leading edge and
* setup on the trailing edge.
*
* The bitorder option is used to indicate whether LSB or
* MSB is shifted first.
*
* See the diagrams in the Aardvark datasheet for
* more details.
*/
enum AardvarkSpiPolarity {
AA_SPI_POL_RISING_FALLING = 0,
AA_SPI_POL_FALLING_RISING = 1
};
#ifndef __cplusplus
typedef enum AardvarkSpiPolarity AardvarkSpiPolarity;
#endif
enum AardvarkSpiPhase {
AA_SPI_PHASE_SAMPLE_SETUP = 0,
AA_SPI_PHASE_SETUP_SAMPLE = 1
};
#ifndef __cplusplus
typedef enum AardvarkSpiPhase AardvarkSpiPhase;
#endif
enum AardvarkSpiBitorder {
AA_SPI_BITORDER_MSB = 0,
AA_SPI_BITORDER_LSB = 1
};
#ifndef __cplusplus
typedef enum AardvarkSpiBitorder AardvarkSpiBitorder;
#endif
/* Configure the SPI master or slave interface */
int aa_spi_configure (
Aardvark aardvark,
AardvarkSpiPolarity polarity,
AardvarkSpiPhase phase,
AardvarkSpiBitorder bitorder
);
/* Write a stream of bytes to the downstream SPI slave device. */
int aa_spi_write (
Aardvark aardvark,
u16 out_num_bytes,
const u08 * data_out,
u16 in_num_bytes,
u08 * data_in
);
/* Enable/Disable the Aardvark as an SPI slave device */
int aa_spi_slave_enable (
Aardvark aardvark
);
int aa_spi_slave_disable (
Aardvark aardvark
);
/*
* Set the slave response in the event the Aardvark is put
* into slave mode and contacted by a Master.
*/
int aa_spi_slave_set_response (
Aardvark aardvark,
u08 num_bytes,
const u08 * data_out
);
/* Read the bytes from an SPI slave reception */
int aa_spi_slave_read (
Aardvark aardvark,
u16 num_bytes,
u08 * data_in
);
/*
* Change the output polarity on the SS line.
*
* Note: When configured as an SPI slave, the Aardvark will
* always be setup with SS as active low. Hence this function
* only affects the SPI master functions on the Aardvark.
*/
enum AardvarkSpiSSPolarity {
AA_SPI_SS_ACTIVE_LOW = 0,
AA_SPI_SS_ACTIVE_HIGH = 1
};
#ifndef __cplusplus
typedef enum AardvarkSpiSSPolarity AardvarkSpiSSPolarity;
#endif
int aa_spi_master_ss_polarity (
Aardvark aardvark,
AardvarkSpiSSPolarity polarity
);
/*=========================================================================
| GPIO API
========================================================================*/
/*
* The following enumerated type maps the named lines on the
* Aardvark I2C/SPI line to bit positions in the GPIO API.
* All GPIO API functions will index these lines through an
* 8-bit masked value. Thus, each bit position in the mask
* can be referred back its corresponding line through the
* enumerated type.
*/
enum AardvarkGpioBits {
AA_GPIO_SCL = 0x01,
AA_GPIO_SDA = 0x02,
AA_GPIO_MISO = 0x04,
AA_GPIO_SCK = 0x08,
AA_GPIO_MOSI = 0x10,
AA_GPIO_SS = 0x20
};
#ifndef __cplusplus
typedef enum AardvarkGpioBits AardvarkGpioBits;
#endif
/*
* Configure the GPIO, specifying the direction of each bit.
*
* A call to this function will not change the value of the pullup
* mask in the Aardvark. This is illustrated by the following
* example:
* (1) Direction mask is first set to 0x00
* (2) Pullup is set to 0x01
* (3) Direction mask is set to 0x01
* (4) Direction mask is later set back to 0x00.
*
* The pullup will be active after (4).
*
* On Aardvark power-up, the default value of the direction
* mask is 0x00.
*/
#define AA_GPIO_DIR_INPUT 0
#define AA_GPIO_DIR_OUTPUT 1
int aa_gpio_direction (
Aardvark aardvark,
u08 direction_mask
);
/*
* Enable an internal pullup on any of the GPIO input lines.
*
* Note: If a line is configured as an output, the pullup bit
* for that line will be ignored, though that pullup bit will
* be cached in case the line is later configured as an input.
*
* By default the pullup mask is 0x00.
*/
#define AA_GPIO_PULLUP_OFF 0
#define AA_GPIO_PULLUP_ON 1
int aa_gpio_pullup (
Aardvark aardvark,
u08 pullup_mask
);
/*
* Read the current digital values on the GPIO input lines.
*
* The bits will be ordered as described by AA_GPIO_BITS. If a
* line is configured as an output, its corresponding bit
* position in the mask will be undefined.
*/
int aa_gpio_get (
Aardvark aardvark
);
/*
* Set the outputs on the GPIO lines.
*
* Note: If a line is configured as an input, it will not be
* affected by this call, but the output value for that line
* will be cached in the event that the line is later
* configured as an output.
*/
int aa_gpio_set (
Aardvark aardvark,
u08 value
);
/*
* Block until there is a change on the GPIO input lines.
* Pins configured as outputs will be ignored.
*
* The function will return either when a change has occurred or
* the timeout expires. The timeout, specified in millisecods, has
* a precision of ~16 ms. The maximum allowable timeout is
* approximately 4 seconds. If the timeout expires, this function
* will return the current state of the GPIO lines.
*
* This function will return immediately with the current value
* of the GPIO lines for the first invocation after any of the
* following functions are called: aa_configure,
* aa_gpio_direction, or aa_gpio_pullup.
*
* If the function aa_gpio_get is called before calling
* aa_gpio_change, aa_gpio_change will only register any changes
* from the value last returned by aa_gpio_get.
*/
int aa_gpio_change (
Aardvark aardvark,
u16 timeout
);
#ifdef __cplusplus
}
#endif
#endif /* __aardvark_h__ */

Binary file not shown.

View File

@ -12,13 +12,6 @@ ignore = [
# bincode v2.0.1 via probe-rs — project ceased but 1.3.3 considered complete
"RUSTSEC-2025-0141",
{ id = "RUSTSEC-2024-0384", reason = "Reported to `rust-nostr/nostr` and it's WIP" },
{ id = "RUSTSEC-2024-0388", reason = "derivative via extism → wasmtime transitive dep" },
{ id = "RUSTSEC-2025-0057", reason = "fxhash via extism → wasmtime transitive dep" },
{ id = "RUSTSEC-2025-0119", reason = "number_prefix via indicatif — cosmetic dep" },
# wasmtime vulns via extism 1.13.0 — no upstream fix yet; plugins feature-gated
{ id = "RUSTSEC-2026-0006", reason = "wasmtime segfault via extism; awaiting extism upgrade" },
{ id = "RUSTSEC-2026-0020", reason = "WASI resource exhaustion via extism; awaiting extism upgrade" },
{ id = "RUSTSEC-2026-0021", reason = "WASI http fields panic via extism; awaiting extism upgrade" },
]
[licenses]

View File

@ -10,22 +10,3 @@ default_temperature = 0.7
port = 42617
host = "[::]"
allow_public_bind = true
# Cost tracking and budget enforcement configuration
# Enable to track API usage costs and enforce spending limits
[cost]
enabled = false
daily_limit_usd = 10.0
monthly_limit_usd = 100.0
warn_at_percent = 80
allow_override = false
# Per-model pricing (USD per 1M tokens)
# Uncomment and customize to override default pricing
# [cost.prices."anthropic/claude-sonnet-4-20250514"]
# input = 3.0
# output = 15.0
#
# [cost.prices."openai/gpt-4o"]
# input = 5.0
# output = 15.0

4
dist/aur/.SRCINFO vendored
View File

@ -1,6 +1,6 @@
pkgbase = zeroclaw
pkgdesc = Zero overhead. Zero compromise. 100% Rust. The fastest, smallest AI assistant.
pkgver = 0.5.9
pkgver = 0.4.3
pkgrel = 1
url = https://github.com/zeroclaw-labs/zeroclaw
arch = x86_64
@ -10,7 +10,7 @@ pkgbase = zeroclaw
makedepends = git
depends = gcc-libs
depends = openssl
source = zeroclaw-0.5.9.tar.gz::https://github.com/zeroclaw-labs/zeroclaw/archive/refs/tags/v0.5.9.tar.gz
source = zeroclaw-0.4.3.tar.gz::https://github.com/zeroclaw-labs/zeroclaw/archive/refs/tags/v0.4.3.tar.gz
sha256sums = SKIP
pkgname = zeroclaw

2
dist/aur/PKGBUILD vendored
View File

@ -1,6 +1,6 @@
# Maintainer: zeroclaw-labs <bot@zeroclaw.dev>
pkgname=zeroclaw
pkgver=0.5.9
pkgver=0.4.3
pkgrel=1
pkgdesc="Zero overhead. Zero compromise. 100% Rust. The fastest, smallest AI assistant."
arch=('x86_64')

Some files were not shown because too many files have changed in this diff Show More