Changelog
- 42e0e58 * The docker-build workflow will no longer run when submitting a PR.
- 7140e73 * fix fmt bug
- 68abf6b * fix: docker build failed
- 878650c * fix: heartbeat/service_test.go test failed
- 951b05d 1. add AI Code Generation selection in pr template
- 5fb2721 1. add android phone termux quick guide
- 0fadbcd 1. add roadmap.md
- da79c20 1. fix typo
- ac4b16d 1. rename doc to docs
- 13e4028 1. update wechat group qrcode 2. publish roadmap
- b484d3f Add dependencies for fmt-check in vet and test jobs
- 341dbd3 Add health check endpoints (/health and /ready) for container orchestration liveness and readiness probes. (#104)
- cd638ff Add local AI ollama for security purpose (#226)
- 1516cb5 Change Docker build trigger to on release published
- 8d757fb Feat issue 183 (#189)
- 32cb8fd Feat: Discord message length check and auto split (#143)
- ba0ef4b Merge branch 'main' into architecture-32-bit
- 2cb90f2 Merge branch 'main' into architecture-32-bit
- bc27707 Merge branch 'main' into main
- bd9c9d7 Merge branch 'main' into main
- fc40f29 Merge branch 'main' into main
- 25a47b5 Merge branch 'main' into patch-1
- a286100 Merge branch 'main' into patch-1
- f739c45 Merge branch 'main' of https://github.com/SatyamDevv/picoclaw
- 04924ed Merge branch 'main' of https://github.com/SatyamDevv/picoclaw
- e0a7662 Merge branch 'main' of https://github.com/sipeed/picoclaw
- 0c4b8b0 Merge branch 'sipeed:main' into main
- fbe1152 Merge branch 'sipeed:main' into main
- 9036a51 Merge branch 'sipeed:main' into main
- 0d339d9 Merge branch 'sipeed:main' into main
- 5339389 Merge pull request #105 from Zhaoyikaiii/bugfix/fix-duplicate-telegram-messages
- 9ccfea4 Merge pull request #108 from yinwm/ralph/tool-result-refactor
- c58f8b7 Merge pull request #111 from shengsuan/ssy
- ee3e8cc Merge pull request #124 from mengzhuo/mengzhuo-fmt-1
- 14de80d Merge pull request #128 from yinwm/feat/better-version
- 82a9a80 Merge pull request #130 from MHCP000/fix/codeblock-index-bug
- 3334595 Merge pull request #134 from Sethispr/patch-1
- 5872e0f Merge pull request #147 from ex-takashima/feat/line-channel
- ddd73ca Merge pull request #151 from qiaoborui/codex/fix-openai-oauth-authorize-url
- 1cff7d4 Merge pull request #153 from alexhoshina/doc/fix-errors
- b805ec8 Merge pull request #158 from easyzoom/feat/device-hotplug-notifications
- 0f506d4 Merge pull request #165 from alexhoshina/feat/onebot
- 59c7aa1 Merge pull request #167 from Lixeer/main
- 1cb690d Merge pull request #169 from PixelTux/architecture-32-bit
- 6ce7659 Merge pull request #172 from mymmrac/docker-curl
- 8eb9dcd Merge pull request #173 from is-Xiaoen/fix/code-review-bugs-116
- 6f2e730 Merge pull request #178 from Lixeer/main
- 7f60392 Merge pull request #24 from Esubaalew/main
- 55d5e89 Merge pull request #78 from SatyamDevv/main
- 1aea912 Merge pull request #83 from carzygod/main
- c0d1346 Merge pull request #85 from lesichkovm/patch-1
- 3c2e467 Merge remote-tracking branch 'origin/HEAD' into feat/better-version
- a6aa833 Merge remote-tracking branch 'origin/main' into ralph/tool-result-refactor
- 53b5be8 Merge remote-tracking branch 'origin/main' into ralph/tool-result-refactor
- ab20314 Merge upstream/main into ralph/tool-result-refactor
- a371d53 Prevent panic on publish after MessageBus is closed (#223)
- 1d748fb Remove duplicate file extension in DownloadFile (#230)
- e7f15af Update issue templates
- 5893245 Update launch announcement in README
- 2720fa7 add I2C and SPI tools for hardware interaction (#140)
- cddafb4 add build constraints for feishu to support 32-bit builds
- 811e4f8 add when picoclaw responsed to discord message will show its typing (#236)
- 132fe7d bugfix: fix duplicate Telegram message sending
- 159a954 build: support building for linux/loong64 (#272)
- a5503ae build: temporary disable UPX compression (#257)
- 7fa70b8 chore(docs): remove completed PRD document from tasks
- b36c87b chore: Clean up Ralph agent tracking files
- 3eb9d6a chore: Remove backup cron files
- ff92973 chore: fix tab in build
- d7822e5 chore: fmt code in build
- 15e3c7d chore: lint readme
- ecbe315 chore: remove redundant debug output
- 9a3f361 ci: init goreleaser
- 0d18210 ci: use goreleaser to release docker and binary (#180)
- 5a6ad37 code fmt
- f294a71 feat(channels): add LINE Official Account channel support
- 5aa4dd2 feat(cli): add git commit hash to version output
- a24cbd4 feat(docker): Added curl for Docker image
- c6c82b3 feat(skills): add validation for skill info and test cases (#231)
- 53df8d1 feat: Add DuckDuckGo search fallback.
- 18d3634 feat: Improve parameter fault tolerance for DeepSeek
- a9557aa feat: Support installing built-in AGENT files and skills during
picoclaw onboard - ca781d4 feat: US-002 - Modify Tool interface to return *ToolResult
- c6c61b4 feat: US-004 - Delete isToolConfirmationMessage function
- b573d61 feat: US-005 - Update AgentLoop tool result processing logic
- 56ac18a feat: US-006 - Add AsyncCallback type and AsyncTool interface
- 7bcd8b2 feat: US-007 - Add heartbeat async task execution support
- 4c4c10c feat: US-008 - Inject callback into async tools in AgentLoop
- b94941d feat: US-009 - Add state save atomicity with SetLastChannel
- feba44e feat: US-010 - Add RecordLastChannel to AgentLoop with atomic state save
- 2989c39 feat: US-011 - Add MessageTool tests
- e7e3f95 feat: US-012 - Add ShellTool tests
- 88014ec feat: US-013 - Add FilesystemTool tests
- 0ac93d4 feat: US-014 - Add WebTool tests
- 35fa64c feat: US-015 - Add EditTool tests
- a141815 feat: US-016 - Refactor CronTool to use ToolResult
- 061b071 feat: US-016, US-017 - Mark CronTool and SpawnTool as complete
- 28734c3 feat: US-018 - Add SubagentTool with ToolResult support
- 03b02cc feat: US-019 - Enable heartbeat by default in config
- e63f967 feat: US-020 - Move heartbeat log to memory directory
- be81ba1 feat: US-021 - Heartbeat calls ExecuteHeartbeatWithTools
- e77b0a6 feat: add Codex CLI provider for subprocess integration (#80)
- 7fa641a feat: add OneBot channel support
- 896eae4 feat: add ShengSuanYun(胜算云) as a models provider.
- 5faa67b feat: add
Github Copilotprovider - 3780455 feat: add device hotplug event notifications (USB on Linux)
- afc3a2c feat: add provider
deepseek - 2f5849b feat: add support for DuckDuckGo and refactor Brave search configuration support the control with config.js
- 9d5728e feat: implement structured Telegram command handling with a dedicated command service and
telegohandlerintegration. (#164) - e7e0861 feat: merge heartbeat service improvements from feat-heartbeat branch
- e353844 feat: re-enable cronTool service after refactor completion
- 17685da feat: update the
make depslogic to prevent the project from frequently updating dependency package versions (#277) - 0aab8d8 feat:add
github_copilotto providers factory - 7fa341c fix concurrency and persistence safety in session/cron/heartbeat services
- 7304ab7 fix(auth): align OpenAI OAuth authorize URL and params
- a961a2d fix(ci): use env var for release tag (#342)
- da804a0 fix(codex): include required instructions and improve account-id extraction
- 16e5a02 fix(http_provider): Remove extra parameter from CreateProvider function.
- e3f65fc fix(security): block critical symlink workspace escape (#188)
- 9eb1a53 fix: PR workflow execution failure
- dbf2739 fix: Remove the waiting animation for Telegram replies to reduce the risk of being rate-limited.
- 0cb9387 fix: codex agent 400 error (#102)
- 1e17bac fix: correct index bug in extractCodeBlocks and extractInlineCodes
- 8cff6cf fix: improve connection handling in OneBotChannel
- 4b886b6 fix: not used result
- 6c392c3 fix: openclaw crash because of empty config
- 474f3db fix: resolve code review issues in tool-result-refactor
- 0a88ff0 fix: resolve multiple bugs from code review #116
- 5c321a9 fix: tighten file perms and enforce Slack ACL checks (#186)
- 773ce9b fix: update BotStatus type in oneBotRawEvent and adjust status checks
- 6463796 fix: update tests to match upstream API changes
- 000e64c gh: add pull request check
- f6d6221 make fmt
- 7a96599 make fmt
- aa7a8b8 merge: resolve conflict with upstream main
- cf5a84a merge: resolve conflicts with upstream/main
- 584a3dc misc: fmt code
- b594642 perf(cron): use read lock for concurrent reads in addJob
- 0cce9fc refactor(agent): extract reusable tool loop and make subagents independent
- 4dfa133 refactor(heartbeat): add configurable interval and channel-aware routing
- 8fbbb67 refactor(heartbeat): simplify service with single handler and direct bus usage
- 8851152 refactor(tools): extract shared logic for internal channels and tool definitions
- 92490fe refactor(version): extract version formatting helpers and improve build info display
- 45351a6 refactor: Trim trailing slashes from the API base URL and enhance API error messages with status codes.
- 1299b20 refactor: remove unused min func
- c86e121 refactor: update tool registry usage and enhance WebSearchTool execution result handling
- 60c3d96 style: fix alignment of fields in BotStatus struct
- 1fcf3fd style: fix format
- ac79a23 style: fix gofmt formatting (CRLF -> LF)
- b5a8eff style: fix var block formatting
- f742112 style: remove unnecessary log messages in WebSocket listener
- 0a4bf32 try after workflow fix
- 57dac39 update pr template
- 82fea61 update readme
- 875a16d update telegram username support
- 6083168 update wechat group qrcode
- 214b201 update wechat group qrcode
Released by GoReleaser.