Commit Graph
37 Commits
Author SHA1 Message Date
viettranx 86d58e1021 feat: Introduce a new upgrade command and enhance built-in tool settings with provider and model configuration. 2026-02-27 11:38:04 +07:00
viettranx d65d792646 feat: Implement built-in tool management with persistence, API, and UI. 2026-02-27 10:19:19 +07:00
viettranx 66808850d4 feat: Implement LLM retry notifications in channels via placeholder updates. 2026-02-27 09:53:45 +07:00
viettranx 2ac44ce937 feat: enhance filesystem security with symlink/hardlink protection, implement typing indicators, and improve scheduler queue management for stale requests. 2026-02-26 22:47:59 +07:00
viettranx d5cc5a745d feat: Implement vision capabilities and image generation tools, adding media handling, dedicated configurations, and trace optimization for image data. 2026-02-26 22:28:27 +07:00
viettranx 112fddb401 feat: Make prepare-env.sh non-interactive by removing the API key prompt, updating README.md instructions and script output. 2026-02-26 19:42:25 +07:00
viettranx 31f7e1e22e feat: add prepare-env.sh script, update documentation, and refine session scheduling with new lanes and stop commands. 2026-02-26 18:48:13 +07:00
viettranx 1088ffceae feat: Introduce Docker-based sandboxing with container lifecycle management, execution, pruning, and core sandbox interfaces. 2026-02-26 16:45:45 +07:00
viettranx f3ba434e8e feat: Display cached token count in the traces table. 2026-02-26 12:12:53 +07:00
viettranxandClaude Opus 4.6 90107c73d3 docs: add git clone step to Quick Start
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-26 12:12:30 +07:00
viettranxandClaude Opus 4.6 a0ef0c2f91 build: add dynamic version injection via ldflags and Makefile
- Add cmd.Version variable set at build time via -ldflags
- Fix Dockerfile ldflags path to use cmd.Version instead of main.version
- Add Makefile with auto-detection from git tags (git describe)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-26 10:42:54 +07:00
viettranx 6066adc15a feat: Implement agent delegation, quality gates, and a new hooks evaluation system. 2026-02-26 10:15:07 +07:00
viettranx b365ef5494 feat: Modularize Telegram commands, introduce new scheduler components, and enhance agent management and Feishu integration. 2026-02-26 08:16:06 +07:00
viettranx dfd91556f8 feat: Introduce agent teams, agent linking, and advanced agent orchestration features. 2026-02-25 23:24:52 +07:00
viettranx 67b19e4746 feat: Implement standalone gateway mode with file-based agent storage and add path denial capabilities to filesystem tools. 2026-02-25 10:07:25 +07:00
viettranx 206c8256fd refactor: merge sql file to repare to public repo 2026-02-25 08:52:47 +07:00
viettranx f71dad016f refactor: improve dialog form scrolling behavior by making content scroll independently of header and footer. 2026-02-25 08:47:50 +07:00
viettranx 82efb43715 feat: Add persistent workspace volumes, improve workspace directory creation robustness, and enhance trace error display. 2026-02-24 22:53:09 +07:00
viettranx 9b0dce2aa5 feat: Dynamically register/unregister providers in memory and recompute stale cron job next_run_at on startup. 2026-02-24 21:59:38 +07:00
viettranx 3a85614e0b feat: exempt USER.md writes from group permission checks during bootstrap onboarding. 2026-02-24 20:42:11 +07:00
viettranx f5ff96d998 feat: Improve agent concurrency with per-session summarization locks and message buffering, add adaptive scheduler throttling, and introduce Telegram /stop and /stopall commands. 2026-02-24 17:44:50 +07:00
viettranx 16022d77be feat: Implement agent resummoning with UI retry, add provider verification, and introduce created_at timestamps to various tables. 2026-02-24 15:18:25 +07:00
viettranx 48878848df feat: enhance agent creation UI/UX, improve agent memory configuration, and refine styling across agent components. 2026-02-24 11:30:51 +07:00
viettranx 08ced252b2 feat: Introduce agent summoning flow with a dedicated modal and updated bootstrap process for predefined agents. 2026-02-24 10:19:49 +07:00
viettranx abaaf8fc83 feat: Implement dynamic model selection for agents using a new backend API and a reusable combobox component. 2026-02-23 19:17:34 +07:00
viettranx 3d63e419a5 feat: Only send 'Thinking...' placeholder message in Telegram direct messages. 2026-02-23 18:19:23 +07:00
viettranx 4feb8fb629 feat: Implement useDeferredLoading hook to defer skeleton display across various pages, enhancing perceived loading performance. 2026-02-23 17:52:48 +07:00
Viet Tran d56813d726 Add per-agent tool policy support with NO_REPLY placeholder cleanup across channels
Wire AgentToolPolicy from agent spec through loop creation and resolver, passing it to PolicyEngine.FilterTools for per-agent tool restrictions (nil = no restrictions). Set RestrictToWorkspace=true for default agent in managed mode seeding. Clean up thinking/placeholder messages in Discord and Telegram when agent suppresses empty/NO_REPLY responses by publishing empty outbound and deleting placeholders without sending messages.
2026-02-22 22:49:22 +07:00
Viet Tran 2991283901 Add environment variable dumping protections and expand credential scrubbing patterns
Remove env/printenv from safe bins list and add deny patterns for bare env/printenv/set/export commands that dump all environment variables including secrets. Expand credential scrubbing to detect connection strings (PostgreSQL, MySQL, MongoDB, Redis, AMQP), generic KEY=/SECRET=/CREDENTIAL= environment variables, DSN/DATABASE_URL patterns, and long hex strings (64+ chars) that may be encryption keys or hashes.
2026-02-22 22:00:35 +07:00
Viet Tran 771179b2cc Add pagination support to sessions, usage, and traces with sender name annotations in group chats
Implement pagination across sessions.list, usage.get, and traces HTTP endpoints with limit/offset/total response fields. Add ListPaged method to SessionStore with SessionListOpts struct. Optimize PostgreSQL session queries using jsonb_array_length to avoid loading full message arrays. Add CountTraces method to TracingStore with shared WHERE clause builder. Create reusable Pagination component with page
2026-02-22 21:47:54 +07:00
Viet Tran 7b7e9a4248 Add user_id and agent_id filtering to cron jobs with token usage tracking and UUID-based agent resolution
Extend CronJob model with UserID field for multi-tenant isolation. Add agentID and userID filter parameters to ListJobs across all store implementations (file, pg). Support agent lookup by UUID in resolver for cron jobs that store agent_id as UUID. Change cron job handler signature to return CronJobResult struct with content, token usage (input/output tokens), and duration. Track execution metrics
2026-02-22 21:19:29 +07:00
Viet Tran 1af9525a6f Add sandbox Docker availability check, agent UUID resolver, and managed mode config redirects
Check Docker availability before enabling sandbox and gracefully disable with warning if unavailable. Add resolveAgentUUID helper in Telegram to support both agent keys and direct UUIDs. Expose sandbox config via environment variables for docker-compose overlay. Add compact redirect cards in config UI for Providers and Channels sections when in managed mode, directing users to dedicated management pages.
2026-02-22 19:22:28 +07:00
Viet Tran 765bec2287 Add Docker-based sandbox support with comprehensive security hardening and graceful fallback
Introduce optional Docker sandbox for agent code execution with defense-in-depth security patterns. Add ENABLE_SANDBOX build arg to conditionally install docker-cli in runtime image. Create docker-compose.sandbox.yml overlay with sandbox configuration (512MB memory, 1 CPU, no network, session-scoped containers). Expand shell command deny patterns to cover data exfiltration (DNS tunneling, curl POST), reverse
2026-02-22 19:18:10 +07:00
Viet Tran 86b1724050 Add group file writer management for Telegram with permission-based file editing
Implement group file writer allowlist system with Telegram commands (/addwriter, /removewriter, /writers) for managing who can edit protected files in group chats. Wire AgentStore through Telegram factory, inject SenderID context for permission checks, and auto-bootstrap first group member as writer. Only existing writers can manage the list, preventing removal of the last writer.
2026-02-22 18:57:24 +07:00
Viet Tran 8221cc2d37 Add Docker security hardening with resource limits and capability restrictions
Apply security best practices to goclaw service: drop all capabilities, enable no-new-privileges, set read-only root filesystem with tmpfs for /tmp, limit PIDs to 200, and cap memory at 1G with 2 CPU cores.
2026-02-22 18:39:57 +07:00
Viet Tran 172216e73d Add edit tool, cron tool, session tools, and message tool with full wiring and exec approval hardening
Register edit tool (sandboxed + non-sandboxed variants) with context file and memory interceptors in managed mode. Add cron tool for agent-facing job management. Register session tools (list, status, history, send) and message tool with proper SessionStoreAware, BusAware, and ChannelSenderAware wiring. Harden exec approval system to always be active with deny patterns + safe bins, defaulting to full
2026-02-22 18:34:05 +07:00
Viet TranandClaude Opus 4.6 f3f4c67b36 Initial commit: GoClaw AI agent gateway
Multi-agent AI gateway with WebSocket RPC, HTTP API, and messaging channel integrations.
Go port of OpenClaw with multi-tenant PostgreSQL, per-user isolation, security hardening,
and production observability.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-22 14:58:07 +07:00