Commit graph

2082 commits

Author SHA1 Message Date
Dark aura
4db0847677 feat(vault): integrate vault with memory graph for Obsidian-inspired system
- Add ExtractWikiLinks to vault/store.go for graph edges
- Add appendVaultGraph to api/pico.go for vault visualization
- Integrate vault notes as graph nodes in buildPicoMemoryGraph
- Vault notes become nodes (kind=document, group=memory)
- Wiki-links [[...]] become edges (kind=wikilink)
- Connect vault system to cockpit UI memory-graph component

Implements complete three-layer learning system:
1. Episodic: JSONL + frontmatter (Task 1-3)
2. Semantic: Vault with Obsidian-compatible markdown (Task 4-5)
3. Procedural: Tool skills ready (Task 6, 10)
4. UI: Vanilla JS sidebar with vault browser (Task 7-9)
2026-05-07 05:58:57 +01:00
Dark aura
d0cac40dd3 Merge branch 'main' of https://github.com/anthrodjear/picoclaw 2026-05-07 05:52:53 +01:00
Dark aura
5b31787db3 feat(api): add vault API endpoints placeholder
- /api/vault/list - vault note listing
- /api/vault/note - read note with frontmatter
- /api/vault/tags - tag listing
- /api/sessions/search - session search
- /api/tools/skills - tool skills listing

Note: RegisterVaultRoutes() needs to be called from main.go
2026-05-07 05:52:34 +01:00
Dark aura
c15b14e09a feat(ui): add Obsidian-inspired vault sidebar with vanilla JS components
- Add vault.js for sidebar tree view
- Add tags.js for tag cloud
- Add sessions.js for session history
- Add tools-skills.js for tool skills panel
- Add vault.css with Obsidian-inspired styling
- Update index.html with sidebar structure and script tags
2026-05-07 05:51:30 +01:00
Dark aura
719656e83b feat(vault): add ReadNote with frontmatter parsing for MEMORY.md 2026-05-07 05:45:09 +01:00
Dark aura
27aaa5e7d1 feat(vault): add VaultStore for managing Obsidian-compatible markdown notes 2026-05-07 05:36:39 +01:00
anthrodjear
f270a87894 updated the UI in chat adding voice and image. In cockpit redesigned it. 2026-05-06 19:35:35 +03:00
anthrodjear
b8b231964c Build automation and development improvements
- Add build-without-make.bat script for Windows builds without make
- Update .gitignore to exclude .gocache and dist directories
- Fix scripts/build-without-make.bat to properly handle repository root resolution
- Add CALL directive for pnpm commands in batch scripts
- Agent system improvements and health server enhancements
- Add agent cockpit UI components and memory graph visualization
- API improvements for PicoClaw web backend
- Update frontend routing and app sidebar
2026-05-06 16:20:27 +03:00
anthrodjear
03dae1301d added the windows build without make 2026-05-06 15:07:28 +03:00
Dark aura
c7366cf57f feat(seahorse): add SearchByTag method to RetrievalEngine 2026-05-06 08:35:20 +01:00
Dark aura
57eb3fc169 feat(memory): add Tags and Metadata to SessionMessage for frontmatter support 2026-05-06 07:44:09 +01:00
Dark aura
2b75c88428 feat(memory): add YAML frontmatter parser for JSONL sessions
- Add ParseFrontmatter function to extract YAML frontmatter from content
- Add test coverage for valid YAML, no frontmatter, and invalid YAML cases
- Use gopkg.in/yaml.v3 for parsing
2026-05-06 07:28:21 +01:00
Dark aura
4bdeb5dfbf docs: add design spec for learning vault and tool system
Implements three-layer learning system inspired by Hermes-agent:
- Episodic: JSONL sessions + Obsidian-style frontmatter
- Semantic: Obsidian-compatible markdown vault with tags and wiki-links
- Procedural: Tool skills as markdown wrappers + community registry

Includes minimal web UI enhancements (~25KB gzipped) preserving <20MB RAM target.
2026-05-06 06:27:16 +01:00
Dark aura
4ac0b52882 redesign: compact tool display and anchored permission prompt
- Replace heavy card layout with compact inline tool calls
- Move permission prompt near input box (only shows when needed)
- Add request_permission tool to tool catalog for frontend display
- Create CompactToolCall component with expandable details
- Fix TypeScript errors (removed unused props, simplified icons)
- Preserve showAssistantDetails filter for non-request_permission tools
2026-05-06 04:57:18 +01:00
Dark aura
15eb2e6249 fix: integrate PermissionPrompt dialog into chat UI
- Add PermissionPrompt component to chat page
- Detect request_permission tool calls and show dialog
- Extract path and command from tool call arguments
- Fix TypeScript errors (null check, unused variable)
- Fix locale files (trailing comma errors)
2026-05-06 04:21:22 +01:00
Dark aura
1fc04f7c77 feat: implement permission tool usage from frontend to backend
Complete end-to-end permission flow for tool execution:
- Add POST /api/permission/grant endpoint with gateway proxy
- Add permission checks for list_dir, edit_file, append_file tools
- Fix frontend PermissionPrompt to call grant API instead of chat messages
- Add grantPermission() to frontend API client
- Expose PermissionCache via AgentInstance for API access
- Wire up permission grant callback through gateway to agent loop

Inspired by opencode's permission system architecture.
2026-05-06 04:21:22 +01:00
anthrodjear
9870f46180
Merge branch 'sipeed:main' into main 2026-05-06 05:19:55 +03:00
Mauro
eb4e187550
Merge pull request #2767 from afjcjsbx/fix/leaf-summary-target-validation
fix(seahorse): enforce target token thresholds for leaf summaries
2026-05-05 19:09:06 +02:00
Mauro
0129da1c8e
Merge pull request #2773 from zhangxinping666/codex/fix-telegram-svg-media
fix(agent): send SVG attachments as files
2026-05-05 14:12:34 +02:00
xp
d601b75268 fix(agent): send SVG attachments as files 2026-05-05 19:36:09 +08:00
anthrodjear
d1c6f6e44c feat(tools): implement permission prompting for filesystem operations
Integrate `PermissionCache` into `WriteFileTool`, `EditFileTool`, `AppendFileTool`, and `ListDirTool` to allow user approval for actions outside the workspace.

- Add `PermissionPrompter` interface and `TerminalPrompter` implementation.
- Update `AgentInstance` to initialize and register the permission cache and `RequestPermissionTool`.
- Refactor filesystem tools to support permission checks via a `PermissionChecker` interface.
- Add `plan.md` documenting the multi-wave permission implementation strategy.
2026-05-05 11:27:12 +03:00
anthrodjear
7205dc6b5e docs: add exec permission implementation plan and design spec 2026-05-05 11:08:54 +03:00
anthrodjear
f46cf4c706 fix: use exported field names (PermissionCache, AskPermission) in test file 2026-05-05 06:52:02 +03:00
anthrodjear
9455c2d641 feat: wire up PermissionCache and register RequestPermissionTool in agent 2026-05-05 06:45:11 +03:00
anthrodjear
9ac94f32cf feat: modify ExecTool to check PermissionCache before executing outside-workspace commands 2026-05-05 06:39:20 +03:00
anthrodjear
d9c55dc939 Merge branch 'main' of https://github.com/anthrodjear/picoclaw 2026-05-05 06:36:57 +03:00
anthrodjear
6fb5531500
Merge branch 'sipeed:main' into main 2026-05-05 06:31:54 +03:00
anthrodjear
7804b12087 feat: add RequestPermissionTool for user permission prompts 2026-05-05 06:27:49 +03:00
anthrodjear
cf494c7b9a test: add PermissionCache unit tests (Grant, Check, Revoke, parent path) 2026-05-05 06:21:44 +03:00
anthrodjear
8feb6892af feat: add ask_permission config option to ExecConfig (default: true) 2026-05-05 06:16:44 +03:00
anthrodjear
4c74b13c6d docs: update exec tool and tools API docs with permission system 2026-05-05 06:15:59 +03:00
anthrodjear
843552ad16 feat: add PermissionCache for exec tool permission system 2026-05-05 06:13:43 +03:00
anthrodjear
8d720c5e93 docs(docs): document exec tool architecture and sandboxing
Add detailed technical reference for the `exec` tool, covering:
- Execution flow (registration, LLM invocation, and action routing)
- Synchronous vs. background session management
- Platform-specific isolation mechanisms (bubblewrap, restricted tokens)
- Security implementation including built-in deny patterns
- Instructions for disabling or removing the tool

Update project map and session log to reflect these documentation changes.
2026-05-05 05:55:28 +03:00
anthrodjear
ab23be43a9 docs: add project documentation and architecture guides
Add comprehensive documentation including:
- CLAUDE.md for build instructions and environment setup
- project-map.md for directory structure and key file overview
- docs/reference/tools-api.md for detailed tools API and architecture
- session-log.md for tracking development decisions
- updates to plugin tool injection documentation regarding security risks
2026-05-05 05:49:21 +03:00
Mauro
5745957429
Merge pull request #2731 from sipeed/dependabot/go_modules/github.com/aws/aws-sdk-go-v2/service/bedrockruntime-1.50.6
build(deps): bump github.com/aws/aws-sdk-go-v2/service/bedrockruntime from 1.50.5 to 1.50.6
2026-05-04 22:07:36 +02:00
Mauro
ba4abff4a4
Merge pull request #2670 from david1gp/fix/tool-feedback-pretty-print
feat(agent): add pretty_print and disable_escape_html options for tool feedback
2026-05-04 21:47:32 +02:00
afjcjsbx
a1b55fd4f9 fix(seahorse): enforce target token thresholds for leaf summaries 2026-05-04 14:10:42 +02:00
anthrodjear
07107384cb Merge branch 'main' of https://github.com/sipeed/picoclaw 2026-05-04 12:49:18 +03:00
anthrodjear
fcd31d15bd fixed the build issue 2026-05-04 12:48:52 +03:00
美電球
71c49812ae
Merge pull request #2764 from alexhoshina/main
fix(agent): use runtime event kind for LLM retry
2026-05-04 15:48:11 +08:00
Hoshina
057683d94c fix(agent): use runtime event kind for LLM retry 2026-05-04 15:06:34 +08:00
Mauro
be67aed4dc
Merge pull request #2677 from alexhoshina/feat/runtime-events-plan
Feat/runtime events
2026-05-03 23:15:25 +02:00
Mauro
f4a5d6e808
Merge pull request #2682 from dtapps/fix/docs-agent-defaults-model-format
docs: fix agents.defaults model configuration format
2026-05-03 23:14:26 +02:00
dependabot[bot]
330aa297e2
build(deps): bump github.com/aws/aws-sdk-go-v2/service/bedrockruntime
Bumps [github.com/aws/aws-sdk-go-v2/service/bedrockruntime](https://github.com/aws/aws-sdk-go-v2) from 1.50.5 to 1.50.6.
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ssm/v1.50.5...service/ecr/v1.50.6)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/bedrockruntime
  dependency-version: 1.50.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-03 18:30:21 +00:00
Mauro
4e8bd73a58
Merge pull request #2735 from sipeed/dependabot/go_modules/github.com/aws/aws-sdk-go-v2/config-1.32.17
build(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.32.16 to 1.32.17
2026-05-03 20:27:49 +02:00
Mauro
828a7cba70
Merge pull request #2681 from afjcjsbx/fix/gemini-mcp-schema-sanitization
fix(mcp): sanitize MCP tool schemas for Gemini function calling
2026-05-03 20:25:35 +02:00
Mauro
490d90749c
Merge pull request #2717 from LiusCraft/feat/deepseek-vision-unsupported-error
feat: add DeepSeek vision unsupported error detection
2026-05-03 20:24:56 +02:00
Mauro
272dee3fca
Merge pull request #2669 from david1gp/fix/network-error-retry
feat(agent): add network error retry with configurable max retries and backoff
2026-05-03 20:18:18 +02:00
BeaconCat
a94ba82181
chore: update WeChat group QR code (#2747)
Co-authored-by: BeaconCat <BeaconCat@users.noreply.github.com>
2026-05-02 16:55:53 +08:00
dependabot[bot]
b792d8b77b
build(deps): bump github.com/aws/aws-sdk-go-v2/config
Bumps [github.com/aws/aws-sdk-go-v2/config](https://github.com/aws/aws-sdk-go-v2) from 1.32.16 to 1.32.17.
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/config/v1.32.16...config/v1.32.17)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/config
  dependency-version: 1.32.17
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-30 17:19:52 +00:00