foliko 1.0.74 → 1.0.76
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.agent/.shared/ui-ux-pro-max/data/charts.csv +26 -0
- package/.agent/.shared/ui-ux-pro-max/data/colors.csv +97 -0
- package/.agent/.shared/ui-ux-pro-max/data/icons.csv +101 -0
- package/.agent/.shared/ui-ux-pro-max/data/landing.csv +31 -0
- package/.agent/.shared/ui-ux-pro-max/data/products.csv +97 -0
- package/.agent/.shared/ui-ux-pro-max/data/prompts.csv +24 -0
- package/.agent/.shared/ui-ux-pro-max/data/react-performance.csv +45 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/react.csv +54 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/shadcn.csv +61 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/vue.csv +50 -0
- package/.agent/.shared/ui-ux-pro-max/data/styles.csv +59 -0
- package/.agent/.shared/ui-ux-pro-max/data/typography.csv +58 -0
- package/.agent/.shared/ui-ux-pro-max/data/ui-reasoning.csv +101 -0
- package/.agent/.shared/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
- package/.agent/.shared/ui-ux-pro-max/data/web-interface.csv +31 -0
- package/.agent/.shared/ui-ux-pro-max/scripts/__pycache__/core.cpython-313.pyc +0 -0
- package/.agent/.shared/ui-ux-pro-max/scripts/__pycache__/design_system.cpython-313.pyc +0 -0
- package/.agent/.shared/ui-ux-pro-max/scripts/core.py +258 -0
- package/.agent/.shared/ui-ux-pro-max/scripts/design_system.py +1067 -0
- package/.agent/.shared/ui-ux-pro-max/scripts/search.py +106 -0
- package/.agent/ARCHITECTURE.md +288 -0
- package/.agent/agents/ambient-agent.md +57 -0
- package/.agent/agents/debugger.md +55 -0
- package/.agent/agents/email-assistant.md +49 -0
- package/.agent/agents/file-manager.md +42 -0
- package/.agent/agents/python-developer.md +60 -0
- package/.agent/agents/scheduler.md +59 -0
- package/.agent/agents/web-developer.md +45 -0
- package/.agent/data/default.json +29 -0
- package/.agent/data/plugins-state.json +255 -0
- package/.agent/mcp_config.json +4 -0
- package/.agent/mcp_config_updated.json +12 -0
- package/.agent/plugins.json +5 -0
- package/.agent/rules/GEMINI.md +273 -0
- package/.agent/rules/allow-rule.md +77 -0
- package/.agent/rules/log-rule.md +83 -0
- package/.agent/rules/security-rule.md +93 -0
- package/.agent/scripts/auto_preview.py +148 -0
- package/.agent/scripts/checklist.py +217 -0
- package/.agent/scripts/session_manager.py +120 -0
- package/.agent/scripts/verify_all.py +327 -0
- package/.agent/skills/api-patterns/SKILL.md +81 -0
- package/.agent/skills/api-patterns/api-style.md +42 -0
- package/.agent/skills/api-patterns/auth.md +24 -0
- package/.agent/skills/api-patterns/documentation.md +26 -0
- package/.agent/skills/api-patterns/graphql.md +41 -0
- package/.agent/skills/api-patterns/rate-limiting.md +31 -0
- package/.agent/skills/api-patterns/response.md +37 -0
- package/.agent/skills/api-patterns/rest.md +40 -0
- package/.agent/skills/api-patterns/scripts/api_validator.py +211 -0
- package/.agent/skills/api-patterns/security-testing.md +122 -0
- package/.agent/skills/api-patterns/trpc.md +41 -0
- package/.agent/skills/api-patterns/versioning.md +22 -0
- package/.agent/skills/app-builder/SKILL.md +75 -0
- package/.agent/skills/app-builder/agent-coordination.md +71 -0
- package/.agent/skills/app-builder/feature-building.md +53 -0
- package/.agent/skills/app-builder/project-detection.md +34 -0
- package/.agent/skills/app-builder/scaffolding.md +118 -0
- package/.agent/skills/app-builder/tech-stack.md +40 -0
- package/.agent/skills/app-builder/templates/SKILL.md +39 -0
- package/.agent/skills/app-builder/templates/astro-static/TEMPLATE.md +76 -0
- package/.agent/skills/app-builder/templates/chrome-extension/TEMPLATE.md +92 -0
- package/.agent/skills/app-builder/templates/cli-tool/TEMPLATE.md +88 -0
- package/.agent/skills/app-builder/templates/electron-desktop/TEMPLATE.md +88 -0
- package/.agent/skills/app-builder/templates/express-api/TEMPLATE.md +83 -0
- package/.agent/skills/app-builder/templates/flutter-app/TEMPLATE.md +90 -0
- package/.agent/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +90 -0
- package/.agent/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +122 -0
- package/.agent/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +122 -0
- package/.agent/skills/app-builder/templates/nextjs-static/TEMPLATE.md +169 -0
- package/.agent/skills/app-builder/templates/nuxt-app/TEMPLATE.md +134 -0
- package/.agent/skills/app-builder/templates/python-fastapi/TEMPLATE.md +83 -0
- package/.agent/skills/app-builder/templates/react-native-app/TEMPLATE.md +119 -0
- package/.agent/skills/architecture/SKILL.md +55 -0
- package/.agent/skills/architecture/context-discovery.md +43 -0
- package/.agent/skills/architecture/examples.md +94 -0
- package/.agent/skills/architecture/pattern-selection.md +68 -0
- package/.agent/skills/architecture/patterns-reference.md +50 -0
- package/.agent/skills/architecture/trade-off-analysis.md +77 -0
- package/.agent/skills/clean-code/SKILL.md +201 -0
- package/.agent/skills/doc.md +177 -0
- package/.agent/skills/frontend-design/SKILL.md +418 -0
- package/.agent/skills/frontend-design/animation-guide.md +331 -0
- package/.agent/skills/frontend-design/color-system.md +311 -0
- package/.agent/skills/frontend-design/decision-trees.md +418 -0
- package/.agent/skills/frontend-design/motion-graphics.md +306 -0
- package/.agent/skills/frontend-design/scripts/accessibility_checker.py +183 -0
- package/.agent/skills/frontend-design/scripts/ux_audit.py +722 -0
- package/.agent/skills/frontend-design/typography-system.md +345 -0
- package/.agent/skills/frontend-design/ux-psychology.md +1116 -0
- package/.agent/skills/frontend-design/visual-effects.md +383 -0
- package/.agent/skills/i18n-localization/SKILL.md +154 -0
- package/.agent/skills/i18n-localization/scripts/i18n_checker.py +241 -0
- package/.agent/skills/mcp-builder/SKILL.md +176 -0
- package/.agent/skills/web-design-guidelines/SKILL.md +57 -0
- package/.agent/workflows/brainstorm.md +113 -0
- package/.agent/workflows/create.md +59 -0
- package/.agent/workflows/debug.md +103 -0
- package/.agent/workflows/deploy.md +176 -0
- package/.agent/workflows/enhance.md +63 -0
- package/.agent/workflows/orchestrate.md +237 -0
- package/.agent/workflows/plan.md +89 -0
- package/.agent/workflows/preview.md +81 -0
- package/.agent/workflows/simple-test.md +42 -0
- package/.agent/workflows/status.md +86 -0
- package/.agent/workflows/structured-orchestrate.md +180 -0
- package/.agent/workflows/test.md +144 -0
- package/.agent/workflows/ui-ux-pro-max.md +296 -0
- package/.claude/settings.local.json +11 -1
- package/.editorconfig +56 -0
- package/.husky/pre-commit +4 -0
- package/.lintstagedrc +7 -0
- package/.prettierignore +29 -0
- package/.prettierrc +11 -0
- package/CLAUDE.md +2 -0
- package/README.md +64 -55
- package/SPEC.md +102 -61
- package/cli/bin/foliko.js +11 -11
- package/cli/src/commands/chat.js +143 -141
- package/cli/src/commands/list.js +93 -90
- package/cli/src/index.js +75 -75
- package/cli/src/ui/chat-ui.js +201 -199
- package/cli/src/utils/ansi.js +40 -40
- package/cli/src/utils/markdown.js +292 -296
- package/docker-compose.yml +1 -1
- package/docs/ai-sdk-optimization.md +655 -643
- package/docs/features.md +80 -80
- package/docs/quick-reference.md +49 -46
- package/docs/user-manual.md +411 -380
- package/examples/ambient-example.js +194 -196
- package/examples/basic.js +50 -45
- package/examples/bootstrap.js +121 -112
- package/examples/mcp-example.js +19 -16
- package/examples/skill-example.js +20 -20
- package/examples/test-chat.js +137 -135
- package/examples/test-mcp.js +85 -79
- package/examples/test-reload.js +59 -61
- package/examples/test-telegram.js +50 -50
- package/examples/test-tg-bot.js +45 -42
- package/examples/test-tg-simple.js +47 -46
- package/examples/test-tg.js +62 -62
- package/examples/test-think.js +43 -37
- package/examples/test-web-plugin.js +103 -98
- package/examples/test-weixin-feishu.js +103 -100
- package/examples/workflow.js +158 -158
- package/package.json +37 -3
- package/plugins/ai-plugin.js +102 -100
- package/plugins/ambient-agent/EventWatcher.js +113 -0
- package/plugins/ambient-agent/ExplorerLoop.js +640 -0
- package/plugins/ambient-agent/GoalManager.js +197 -0
- package/plugins/ambient-agent/Reflector.js +95 -0
- package/plugins/ambient-agent/StateStore.js +90 -0
- package/plugins/ambient-agent/constants.js +101 -0
- package/plugins/ambient-agent/index.js +579 -0
- package/plugins/audit-plugin.js +187 -187
- package/plugins/default-plugins.js +662 -649
- package/plugins/email/constants.js +64 -0
- package/plugins/email/handlers.js +461 -0
- package/plugins/email/index.js +278 -0
- package/plugins/email/monitor.js +269 -0
- package/plugins/email/parser.js +138 -0
- package/plugins/email/reply.js +151 -0
- package/plugins/email/utils.js +124 -0
- package/plugins/feishu-plugin.js +481 -477
- package/plugins/file-system-plugin.js +826 -476
- package/plugins/install-plugin.js +199 -197
- package/plugins/python-executor-plugin.js +367 -365
- package/plugins/python-plugin-loader.js +481 -479
- package/plugins/rules-plugin.js +294 -292
- package/plugins/scheduler-plugin.js +691 -689
- package/plugins/session-plugin.js +369 -367
- package/plugins/shell-executor-plugin.js +197 -197
- package/plugins/storage-plugin.js +240 -238
- package/plugins/subagent-plugin.js +845 -785
- package/plugins/telegram-plugin.js +482 -475
- package/plugins/think-plugin.js +345 -343
- package/plugins/tools-plugin.js +196 -194
- package/plugins/web-plugin.js +606 -604
- package/plugins/weixin-plugin.js +545 -538
- package/reports/system-health-report-20260401.md +79 -0
- package/skills/ambient-agent/SKILL.md +49 -39
- package/skills/foliko-dev/AGENTS.md +64 -61
- package/skills/foliko-dev/SKILL.md +125 -119
- package/skills/mcp-usage/SKILL.md +19 -17
- package/skills/python-plugin-dev/SKILL.md +16 -15
- package/skills/skill-guide/SKILL.md +12 -12
- package/skills/subagent-guide/SKILL.md +237 -0
- package/skills/workflow-guide/SKILL.md +90 -45
- package/skills/workflow-troubleshooting/DEBUGGING.md +36 -21
- package/skills/workflow-troubleshooting/SKILL.md +156 -79
- package/src/capabilities/index.js +11 -11
- package/src/capabilities/skill-manager.js +609 -595
- package/src/capabilities/workflow-engine.js +1109 -1195
- package/src/core/agent-chat.js +882 -735
- package/src/core/agent.js +892 -688
- package/src/core/framework.js +465 -431
- package/src/core/index.js +19 -19
- package/src/core/plugin-base.js +219 -219
- package/src/core/plugin-manager.js +863 -767
- package/src/core/provider.js +114 -111
- package/src/core/sub-agent-config.js +264 -0
- package/src/core/system-prompt-builder.js +120 -0
- package/src/core/tool-registry.js +517 -134
- package/src/core/tool-router.js +297 -216
- package/src/executors/executor-base.js +12 -12
- package/src/executors/mcp-executor.js +741 -729
- package/src/index.js +25 -37
- package/src/utils/circuit-breaker.js +301 -0
- package/src/utils/error-boundary.js +363 -0
- package/src/utils/error.js +374 -0
- package/src/utils/event-emitter.js +97 -97
- package/src/utils/id.js +133 -0
- package/src/utils/index.js +217 -3
- package/src/utils/logger.js +181 -0
- package/src/utils/plugin-helpers.js +90 -0
- package/src/utils/retry.js +122 -0
- package/src/utils/sandbox.js +292 -0
- package/test/tool-registry-validation.test.js +218 -0
- package/test_report.md +70 -0
- package/website/docs/api.html +169 -107
- package/website/docs/configuration.html +296 -144
- package/website/docs/plugin-development.html +154 -85
- package/website/docs/project-structure.html +110 -109
- package/website/docs/skill-development.html +117 -61
- package/website/index.html +209 -205
- package/website/script.js +136 -133
- package/website/styles.css +1 -1
- package/plugins/ambient-agent-plugin.js +0 -1565
- package/plugins/email.js +0 -1142
|
@@ -0,0 +1,296 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Plan and implement UI
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
description: AI-powered design intelligence with 50+ styles, 95+ color palettes, and automated design system generation
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# ui-ux-pro-max
|
|
10
|
+
|
|
11
|
+
Comprehensive design guide for web and mobile applications. Contains 50+ styles, 97 color palettes, 57 font pairings, 99 UX guidelines, and 25 chart types across 9 technology stacks. Searchable database with priority-based recommendations.
|
|
12
|
+
|
|
13
|
+
## Prerequisites
|
|
14
|
+
|
|
15
|
+
Check if Python is installed:
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
python3 --version || python --version
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
If Python is not installed, install it based on user's OS:
|
|
22
|
+
|
|
23
|
+
**macOS:**
|
|
24
|
+
```bash
|
|
25
|
+
brew install python3
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
**Ubuntu/Debian:**
|
|
29
|
+
```bash
|
|
30
|
+
sudo apt update && sudo apt install python3
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
**Windows:**
|
|
34
|
+
```powershell
|
|
35
|
+
winget install Python.Python.3.12
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## How to Use This Workflow
|
|
41
|
+
|
|
42
|
+
When user requests UI/UX work (design, build, create, implement, review, fix, improve), follow this workflow:
|
|
43
|
+
|
|
44
|
+
### Step 1: Analyze User Requirements
|
|
45
|
+
|
|
46
|
+
Extract key information from user request:
|
|
47
|
+
- **Product type**: SaaS, e-commerce, portfolio, dashboard, landing page, etc.
|
|
48
|
+
- **Style keywords**: minimal, playful, professional, elegant, dark mode, etc.
|
|
49
|
+
- **Industry**: healthcare, fintech, gaming, education, etc.
|
|
50
|
+
- **Stack**: React, Vue, Next.js, or default to `html-tailwind`
|
|
51
|
+
|
|
52
|
+
### Step 2: Generate Design System (REQUIRED)
|
|
53
|
+
|
|
54
|
+
**Always start with `--design-system`** to get comprehensive recommendations with reasoning:
|
|
55
|
+
|
|
56
|
+
```bash
|
|
57
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "<product_type> <industry> <keywords>" --design-system [-p "Project Name"]
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
This command:
|
|
61
|
+
1. Searches 5 domains in parallel (product, style, color, landing, typography)
|
|
62
|
+
2. Applies reasoning rules from `ui-reasoning.csv` to select best matches
|
|
63
|
+
3. Returns complete design system: pattern, style, colors, typography, effects
|
|
64
|
+
4. Includes anti-patterns to avoid
|
|
65
|
+
|
|
66
|
+
**Example:**
|
|
67
|
+
```bash
|
|
68
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "beauty spa wellness service" --design-system -p "Serenity Spa"
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
### Step 2b: Persist Design System (Master + Overrides Pattern)
|
|
72
|
+
|
|
73
|
+
To save the design system for hierarchical retrieval across sessions, add `--persist`:
|
|
74
|
+
|
|
75
|
+
```bash
|
|
76
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "<query>" --design-system --persist -p "Project Name"
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
This creates:
|
|
80
|
+
- `design-system/MASTER.md` — Global Source of Truth with all design rules
|
|
81
|
+
- `design-system/pages/` — Folder for page-specific overrides
|
|
82
|
+
|
|
83
|
+
**With page-specific override:**
|
|
84
|
+
```bash
|
|
85
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "<query>" --design-system --persist -p "Project Name" --page "dashboard"
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
This also creates:
|
|
89
|
+
- `design-system/pages/dashboard.md` — Page-specific deviations from Master
|
|
90
|
+
|
|
91
|
+
**How hierarchical retrieval works:**
|
|
92
|
+
1. When building a specific page (e.g., "Checkout"), first check `design-system/pages/checkout.md`
|
|
93
|
+
2. If the page file exists, its rules **override** the Master file
|
|
94
|
+
3. If not, use `design-system/MASTER.md` exclusively
|
|
95
|
+
|
|
96
|
+
### Step 3: Supplement with Detailed Searches (as needed)
|
|
97
|
+
|
|
98
|
+
After getting the design system, use domain searches to get additional details:
|
|
99
|
+
|
|
100
|
+
```bash
|
|
101
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "<keyword>" --domain <domain> [-n <max_results>]
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
**When to use detailed searches:**
|
|
105
|
+
|
|
106
|
+
| Need | Domain | Example |
|
|
107
|
+
|------|--------|---------|
|
|
108
|
+
| More style options | `style` | `--domain style "glassmorphism dark"` |
|
|
109
|
+
| Chart recommendations | `chart` | `--domain chart "real-time dashboard"` |
|
|
110
|
+
| UX best practices | `ux` | `--domain ux "animation accessibility"` |
|
|
111
|
+
| Alternative fonts | `typography` | `--domain typography "elegant luxury"` |
|
|
112
|
+
| Landing structure | `landing` | `--domain landing "hero social-proof"` |
|
|
113
|
+
|
|
114
|
+
### Step 4: Stack Guidelines (Default: html-tailwind)
|
|
115
|
+
|
|
116
|
+
Get implementation-specific best practices. If user doesn't specify a stack, **default to `html-tailwind`**.
|
|
117
|
+
|
|
118
|
+
```bash
|
|
119
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "<keyword>" --stack html-tailwind
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
Available stacks: `html-tailwind`, `react`, `nextjs`, `vue`, `svelte`, `swiftui`, `react-native`, `flutter`, `shadcn`, `jetpack-compose`
|
|
123
|
+
, `jetpack-compose`
|
|
124
|
+
---
|
|
125
|
+
|
|
126
|
+
## Search Reference
|
|
127
|
+
|
|
128
|
+
### Available Domains
|
|
129
|
+
|
|
130
|
+
| Domain | Use For | Example Keywords |
|
|
131
|
+
|--------|---------|------------------|
|
|
132
|
+
| `product` | Product type recommendations | SaaS, e-commerce, portfolio, healthcare, beauty, service |
|
|
133
|
+
| `style` | UI styles, colors, effects | glassmorphism, minimalism, dark mode, brutalism |
|
|
134
|
+
| `typography` | Font pairings, Google Fonts | elegant, playful, professional, modern |
|
|
135
|
+
| `color` | Color palettes by product type | saas, ecommerce, healthcare, beauty, fintech, service |
|
|
136
|
+
| `landing` | Page structure, CTA strategies | hero, hero-centric, testimonial, pricing, social-proof |
|
|
137
|
+
| `chart` | Chart types, library recommendations | trend, comparison, timeline, funnel, pie |
|
|
138
|
+
| `ux` | Best practices, anti-patterns | animation, accessibility, z-index, loading |
|
|
139
|
+
| `react` | React/Next.js performance | waterfall, bundle, suspense, memo, rerender, cache |
|
|
140
|
+
| `web` | Web interface guidelines | aria, focus, keyboard, semantic, virtualize |
|
|
141
|
+
| `prompt` | AI prompts, CSS keywords | (style name) |
|
|
142
|
+
|
|
143
|
+
### Available Stacks
|
|
144
|
+
|
|
145
|
+
| Stack | Focus |
|
|
146
|
+
|-------|-------|
|
|
147
|
+
| `html-tailwind` | Tailwind utilities, responsive, a11y (DEFAULT) |
|
|
148
|
+
| `react` | State, hooks, performance, patterns |
|
|
149
|
+
| `nextjs` | SSR, routing, images, API routes |
|
|
150
|
+
| `vue` | Composition API, Pinia, Vue Router |
|
|
151
|
+
| `svelte` | Runes, stores, SvelteKit |
|
|
152
|
+
| `swiftui` | Views, State, Navigation, Animation |
|
|
153
|
+
| `react-native` | Components, Navigation, Lists |
|
|
154
|
+
| `flutter` | Widgets, State, Layout, Theming |
|
|
155
|
+
| `shadcn` | shadcn/ui components, theming, forms, patterns |
|
|
156
|
+
| `jetpack-compose` | Composables, Modifiers, State Hoisting, Recomposition |
|
|
157
|
+
|
|
158
|
+
---
|
|
159
|
+
|
|
160
|
+
## Example Workflow
|
|
161
|
+
|
|
162
|
+
**User request:** "Làm landing page cho dịch vụ chăm sóc da chuyên nghiệp"
|
|
163
|
+
|
|
164
|
+
### Step 1: Analyze Requirements
|
|
165
|
+
- Product type: Beauty/Spa service
|
|
166
|
+
- Style keywords: elegant, professional, soft
|
|
167
|
+
- Industry: Beauty/Wellness
|
|
168
|
+
- Stack: html-tailwind (default)
|
|
169
|
+
|
|
170
|
+
### Step 2: Generate Design System (REQUIRED)
|
|
171
|
+
|
|
172
|
+
```bash
|
|
173
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "beauty spa wellness service elegant" --design-system -p "Serenity Spa"
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
**Output:** Complete design system with pattern, style, colors, typography, effects, and anti-patterns.
|
|
177
|
+
|
|
178
|
+
### Step 3: Supplement with Detailed Searches (as needed)
|
|
179
|
+
|
|
180
|
+
```bash
|
|
181
|
+
# Get UX guidelines for animation and accessibility
|
|
182
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "animation accessibility" --domain ux
|
|
183
|
+
|
|
184
|
+
# Get alternative typography options if needed
|
|
185
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "elegant luxury serif" --domain typography
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
### Step 4: Stack Guidelines
|
|
189
|
+
|
|
190
|
+
```bash
|
|
191
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "layout responsive form" --stack html-tailwind
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
**Then:** Synthesize design system + detailed searches and implement the design.
|
|
195
|
+
|
|
196
|
+
---
|
|
197
|
+
|
|
198
|
+
## Output Formats
|
|
199
|
+
|
|
200
|
+
The `--design-system` flag supports two output formats:
|
|
201
|
+
|
|
202
|
+
```bash
|
|
203
|
+
# ASCII box (default) - best for terminal display
|
|
204
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "fintech crypto" --design-system
|
|
205
|
+
|
|
206
|
+
# Markdown - best for documentation
|
|
207
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "fintech crypto" --design-system -f markdown
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
---
|
|
211
|
+
|
|
212
|
+
## Tips for Better Results
|
|
213
|
+
|
|
214
|
+
1. **Be specific with keywords** - "healthcare SaaS dashboard" > "app"
|
|
215
|
+
2. **Search multiple times** - Different keywords reveal different insights
|
|
216
|
+
3. **Combine domains** - Style + Typography + Color = Complete design system
|
|
217
|
+
4. **Always check UX** - Search "animation", "z-index", "accessibility" for common issues
|
|
218
|
+
5. **Use stack flag** - Get implementation-specific best practices
|
|
219
|
+
6. **Iterate** - If first search doesn't match, try different keywords
|
|
220
|
+
|
|
221
|
+
---
|
|
222
|
+
|
|
223
|
+
## Common Rules for Professional UI
|
|
224
|
+
|
|
225
|
+
These are frequently overlooked issues that make UI look unprofessional:
|
|
226
|
+
|
|
227
|
+
### Icons & Visual Elements
|
|
228
|
+
|
|
229
|
+
| Rule | Do | Don't |
|
|
230
|
+
|------|----|----- |
|
|
231
|
+
| **No emoji icons** | Use SVG icons (Heroicons, Lucide, Simple Icons) | Use emojis like 🎨 🚀 ⚙️ as UI icons |
|
|
232
|
+
| **Stable hover states** | Use color/opacity transitions on hover | Use scale transforms that shift layout |
|
|
233
|
+
| **Correct brand logos** | Research official SVG from Simple Icons | Guess or use incorrect logo paths |
|
|
234
|
+
| **Consistent icon sizing** | Use fixed viewBox (24x24) with w-6 h-6 | Mix different icon sizes randomly |
|
|
235
|
+
|
|
236
|
+
### Interaction & Cursor
|
|
237
|
+
|
|
238
|
+
| Rule | Do | Don't |
|
|
239
|
+
|------|----|----- |
|
|
240
|
+
| **Cursor pointer** | Add `cursor-pointer` to all clickable/hoverable cards | Leave default cursor on interactive elements |
|
|
241
|
+
| **Hover feedback** | Provide visual feedback (color, shadow, border) | No indication element is interactive |
|
|
242
|
+
| **Smooth transitions** | Use `transition-colors duration-200` | Instant state changes or too slow (>500ms) |
|
|
243
|
+
|
|
244
|
+
### Light/Dark Mode Contrast
|
|
245
|
+
|
|
246
|
+
| Rule | Do | Don't |
|
|
247
|
+
|------|----|----- |
|
|
248
|
+
| **Glass card light mode** | Use `bg-white/80` or higher opacity | Use `bg-white/10` (too transparent) |
|
|
249
|
+
| **Text contrast light** | Use `#0F172A` (slate-900) for text | Use `#94A3B8` (slate-400) for body text |
|
|
250
|
+
| **Muted text light** | Use `#475569` (slate-600) minimum | Use gray-400 or lighter |
|
|
251
|
+
| **Border visibility** | Use `border-gray-200` in light mode | Use `border-white/10` (invisible) |
|
|
252
|
+
|
|
253
|
+
### Layout & Spacing
|
|
254
|
+
|
|
255
|
+
| Rule | Do | Don't |
|
|
256
|
+
|------|----|----- |
|
|
257
|
+
| **Floating navbar** | Add `top-4 left-4 right-4` spacing | Stick navbar to `top-0 left-0 right-0` |
|
|
258
|
+
| **Content padding** | Account for fixed navbar height | Let content hide behind fixed elements |
|
|
259
|
+
| **Consistent max-width** | Use same `max-w-6xl` or `max-w-7xl` | Mix different container widths |
|
|
260
|
+
|
|
261
|
+
---
|
|
262
|
+
|
|
263
|
+
## Pre-Delivery Checklist
|
|
264
|
+
|
|
265
|
+
Before delivering UI code, verify these items:
|
|
266
|
+
|
|
267
|
+
### Visual Quality
|
|
268
|
+
- [ ] No emojis used as icons (use SVG instead)
|
|
269
|
+
- [ ] All icons from consistent icon set (Heroicons/Lucide)
|
|
270
|
+
- [ ] Brand logos are correct (verified from Simple Icons)
|
|
271
|
+
- [ ] Hover states don't cause layout shift
|
|
272
|
+
- [ ] Use theme colors directly (bg-primary) not var() wrapper
|
|
273
|
+
|
|
274
|
+
### Interaction
|
|
275
|
+
- [ ] All clickable elements have `cursor-pointer`
|
|
276
|
+
- [ ] Hover states provide clear visual feedback
|
|
277
|
+
- [ ] Transitions are smooth (150-300ms)
|
|
278
|
+
- [ ] Focus states visible for keyboard navigation
|
|
279
|
+
|
|
280
|
+
### Light/Dark Mode
|
|
281
|
+
- [ ] Light mode text has sufficient contrast (4.5:1 minimum)
|
|
282
|
+
- [ ] Glass/transparent elements visible in light mode
|
|
283
|
+
- [ ] Borders visible in both modes
|
|
284
|
+
- [ ] Test both modes before delivery
|
|
285
|
+
|
|
286
|
+
### Layout
|
|
287
|
+
- [ ] Floating elements have proper spacing from edges
|
|
288
|
+
- [ ] No content hidden behind fixed navbars
|
|
289
|
+
- [ ] Responsive at 375px, 768px, 1024px, 1440px
|
|
290
|
+
- [ ] No horizontal scroll on mobile
|
|
291
|
+
|
|
292
|
+
### Accessibility
|
|
293
|
+
- [ ] All images have alt text
|
|
294
|
+
- [ ] Form inputs have labels
|
|
295
|
+
- [ ] Color is not the only indicator
|
|
296
|
+
- [ ] `prefers-reduced-motion` respected
|
|
@@ -143,7 +143,17 @@
|
|
|
143
143
|
"Bash(node -e \"require\\('./plugins/ambient-agent-plugin.js'\\)\" 2>&1)",
|
|
144
144
|
"Bash(node -e \"\nconst { Framework } = require\\('./src/core/framework'\\);\nconst framework = new Framework\\(\\);\nframework.loadPlugin\\('./plugins/ambient-agent-plugin.js'\\).catch\\(console.error\\);\nsetTimeout\\(\\(\\) => {\n const tools = framework.getTools\\(\\);\n console.log\\('Registered tools:', tools.map\\(t => t.name\\)\\);\n}, 2000\\);\n\" 2>&1)",
|
|
145
145
|
"Bash(node -c plugins/scheduler-plugin.js 2>&1)",
|
|
146
|
-
"WebFetch(domain:ai-sdk.dev)"
|
|
146
|
+
"WebFetch(domain:ai-sdk.dev)",
|
|
147
|
+
"Bash(node --check src/utils/index.js 2>&1; echo \"Exit: $?\")",
|
|
148
|
+
"Bash(node --check src/core/agent-chat.js 2>&1; echo \"Exit: $?\")",
|
|
149
|
+
"Bash(node --check plugins/file-system-plugin.js 2>&1; echo \"Exit: $?\")",
|
|
150
|
+
"Bash(node --check src/capabilities/workflow-engine.js && node --check src/core/agent-chat.js && node --check src/core/agent.js && node --check src/core/plugin-manager.js && node --check src/core/framework.js && echo \"All OK\")",
|
|
151
|
+
"Bash(node --check src/utils/retry.js && echo \"OK\")",
|
|
152
|
+
"Bash(git checkout:*)",
|
|
153
|
+
"Bash(node --check plugins/default-plugins.js && echo \"OK\")",
|
|
154
|
+
"Bash(node --check plugins/subagent-plugin.js && echo \"OK\")",
|
|
155
|
+
"Bash(head -1 \"D:\\\\code\\\\vb-agent\\\\cli\\\\bin\\\\foliko.js\" | xxd)",
|
|
156
|
+
"Bash(node D:/code/vb-agent/cli/bin/foliko.js chat)"
|
|
147
157
|
]
|
|
148
158
|
}
|
|
149
159
|
}
|
package/.editorconfig
ADDED
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# EditorConfig is awesome: https://EditorConfig.org
|
|
2
|
+
|
|
3
|
+
# top-most EditorConfig file
|
|
4
|
+
root = true
|
|
5
|
+
|
|
6
|
+
# 代码文件
|
|
7
|
+
[*]
|
|
8
|
+
charset = utf-8
|
|
9
|
+
end_of_line = lf
|
|
10
|
+
insert_final_newline = true
|
|
11
|
+
trim_trailing_whitespace = true
|
|
12
|
+
|
|
13
|
+
# JavaScript / Node.js
|
|
14
|
+
[*.{js,jsx,mjs,cjs}]
|
|
15
|
+
indent_style = space
|
|
16
|
+
indent_size = 2
|
|
17
|
+
|
|
18
|
+
# TypeScript
|
|
19
|
+
[*.{ts,tsx}]
|
|
20
|
+
indent_style = space
|
|
21
|
+
indent_size = 2
|
|
22
|
+
|
|
23
|
+
# JSON
|
|
24
|
+
[*.json]
|
|
25
|
+
indent_style = space
|
|
26
|
+
indent_size = 2
|
|
27
|
+
|
|
28
|
+
# YAML
|
|
29
|
+
[*.{yaml,yml}]
|
|
30
|
+
indent_style = space
|
|
31
|
+
indent_size = 2
|
|
32
|
+
|
|
33
|
+
# Markdown
|
|
34
|
+
[*.md]
|
|
35
|
+
trim_trailing_whitespace = false
|
|
36
|
+
indent_style = space
|
|
37
|
+
indent_size = 2
|
|
38
|
+
|
|
39
|
+
# Shell
|
|
40
|
+
[*.sh]
|
|
41
|
+
indent_style = space
|
|
42
|
+
indent_size = 2
|
|
43
|
+
|
|
44
|
+
# PowerShell
|
|
45
|
+
[*.ps1]
|
|
46
|
+
indent_style = space
|
|
47
|
+
indent_size = 4
|
|
48
|
+
|
|
49
|
+
# Dockerfile
|
|
50
|
+
[Dockerfile]
|
|
51
|
+
indent_style = space
|
|
52
|
+
indent_size = 4
|
|
53
|
+
|
|
54
|
+
# Makefile
|
|
55
|
+
[Makefile]
|
|
56
|
+
indent_style = tab
|
package/.lintstagedrc
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"*.{js,jsx,ts,tsx}": ["prettier --write", "git add"],
|
|
3
|
+
"*.{json,yaml,yml}": ["prettier --write", "git add"],
|
|
4
|
+
"*.{md,mdx}": ["prettier --write", "git add"],
|
|
5
|
+
"*.{css,scss,less}": ["prettier --write", "git add"],
|
|
6
|
+
"*.{html,svg}": ["prettier --write", "git add"]
|
|
7
|
+
}
|
package/.prettierignore
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# 依赖
|
|
2
|
+
node_modules/
|
|
3
|
+
pnpm-lock.yaml
|
|
4
|
+
yarn.lock
|
|
5
|
+
package-lock.json
|
|
6
|
+
|
|
7
|
+
# 构建输出
|
|
8
|
+
dist/
|
|
9
|
+
build/
|
|
10
|
+
out/
|
|
11
|
+
|
|
12
|
+
# 插件目录(第三方代码)
|
|
13
|
+
plugins/
|
|
14
|
+
|
|
15
|
+
# 测试报告
|
|
16
|
+
reports/
|
|
17
|
+
test_report.md
|
|
18
|
+
|
|
19
|
+
# 配置文件(不需要格式化)
|
|
20
|
+
.env
|
|
21
|
+
.env.example
|
|
22
|
+
|
|
23
|
+
# 静态资源
|
|
24
|
+
images/
|
|
25
|
+
audio/
|
|
26
|
+
public/
|
|
27
|
+
|
|
28
|
+
# 锁文件
|
|
29
|
+
*.lock
|
package/.prettierrc
ADDED
package/CLAUDE.md
CHANGED
|
@@ -70,6 +70,7 @@ examples/ # Usage examples
|
|
|
70
70
|
### Plugin System
|
|
71
71
|
|
|
72
72
|
Plugins are registered via `framework.registerPlugin()` and loaded with `framework.loadPlugin()`. Each plugin:
|
|
73
|
+
|
|
73
74
|
- Has a `name`, `version`, `description`, and `priority`
|
|
74
75
|
- Implements `install(framework)` to register tools/events
|
|
75
76
|
- Implements `start(framework)` after initialization
|
|
@@ -79,6 +80,7 @@ Plugins are registered via `framework.registerPlugin()` and loaded with `framewo
|
|
|
79
80
|
### AI Integration
|
|
80
81
|
|
|
81
82
|
Uses Vercel AI SDK (`ai` package) with support for multiple providers:
|
|
83
|
+
|
|
82
84
|
- Anthropic, DeepSeek, MiniMax, OpenAI, OpenAI-Compatible
|
|
83
85
|
|
|
84
86
|
Provider selection via `config.provider` and AI settings in `.agent/ai.json`.
|
package/README.md
CHANGED
|
@@ -56,6 +56,7 @@ foliko list
|
|
|
56
56
|
在 `foliko chat` 的对话界面中,可以直接输入自然语言来控制框架:
|
|
57
57
|
|
|
58
58
|
**插件管理**
|
|
59
|
+
|
|
59
60
|
```
|
|
60
61
|
开启微信插件
|
|
61
62
|
开启飞书插件
|
|
@@ -66,6 +67,7 @@ foliko list
|
|
|
66
67
|
```
|
|
67
68
|
|
|
68
69
|
**定时任务**
|
|
70
|
+
|
|
69
71
|
```
|
|
70
72
|
10分钟后提醒我喝水
|
|
71
73
|
每天早上9点提醒我查看邮件
|
|
@@ -75,6 +77,7 @@ foliko list
|
|
|
75
77
|
```
|
|
76
78
|
|
|
77
79
|
**会话管理**
|
|
80
|
+
|
|
78
81
|
```
|
|
79
82
|
创建一个新会话
|
|
80
83
|
列出所有会话
|
|
@@ -83,6 +86,7 @@ foliko list
|
|
|
83
86
|
```
|
|
84
87
|
|
|
85
88
|
**Ambient Agent**
|
|
89
|
+
|
|
86
90
|
```
|
|
87
91
|
查看 Ambient Agent 状态
|
|
88
92
|
创建一个目标:监控新邮件
|
|
@@ -93,6 +97,7 @@ foliko list
|
|
|
93
97
|
```
|
|
94
98
|
|
|
95
99
|
**子 Agent**
|
|
100
|
+
|
|
96
101
|
```
|
|
97
102
|
列出所有子Agent
|
|
98
103
|
调用 backend-specialist 处理任务
|
|
@@ -100,6 +105,7 @@ foliko list
|
|
|
100
105
|
```
|
|
101
106
|
|
|
102
107
|
**系统操作**
|
|
108
|
+
|
|
103
109
|
```
|
|
104
110
|
执行 shell 命令:ls -la
|
|
105
111
|
安装 npm 包:lodash
|
|
@@ -226,7 +232,7 @@ WEB_BASE_URL=https://your-domain.com
|
|
|
226
232
|
|
|
227
233
|
#### Markdown 格式
|
|
228
234
|
|
|
229
|
-
|
|
235
|
+
````markdown
|
|
230
236
|
# Backend Specialist
|
|
231
237
|
|
|
232
238
|
```json
|
|
@@ -237,7 +243,9 @@ WEB_BASE_URL=https://your-domain.com
|
|
|
237
243
|
"parentTools": ["read_file", "run_command"]
|
|
238
244
|
}
|
|
239
245
|
```
|
|
240
|
-
|
|
246
|
+
````
|
|
247
|
+
|
|
248
|
+
````
|
|
241
249
|
|
|
242
250
|
### ai.json 格式
|
|
243
251
|
|
|
@@ -248,7 +256,7 @@ WEB_BASE_URL=https://your-domain.com
|
|
|
248
256
|
"apiKey": "your-api-key",
|
|
249
257
|
"baseURL": "https://api.minimaxi.com/v1"
|
|
250
258
|
}
|
|
251
|
-
|
|
259
|
+
````
|
|
252
260
|
|
|
253
261
|
### mcp_config.json 格式
|
|
254
262
|
|
|
@@ -288,32 +296,32 @@ WEB_BASE_URL=https://your-domain.com
|
|
|
288
296
|
|
|
289
297
|
```javascript
|
|
290
298
|
// .agent/plugins/my-plugin/index.js
|
|
291
|
-
module.exports = function(Plugin) {
|
|
299
|
+
module.exports = function (Plugin) {
|
|
292
300
|
return class MyPlugin extends Plugin {
|
|
293
301
|
constructor(config = {}) {
|
|
294
|
-
super()
|
|
295
|
-
this.name = 'my-plugin'
|
|
296
|
-
this.version = '1.0.0'
|
|
297
|
-
this.description = '我的工具插件'
|
|
298
|
-
this.priority = 10
|
|
302
|
+
super();
|
|
303
|
+
this.name = 'my-plugin';
|
|
304
|
+
this.version = '1.0.0';
|
|
305
|
+
this.description = '我的工具插件';
|
|
306
|
+
this.priority = 10;
|
|
299
307
|
}
|
|
300
308
|
|
|
301
309
|
install(framework) {
|
|
302
|
-
const { z } = require('zod')
|
|
310
|
+
const { z } = require('zod');
|
|
303
311
|
framework.registerTool({
|
|
304
312
|
name: 'my_tool',
|
|
305
313
|
description: '我的工具',
|
|
306
314
|
inputSchema: z.object({
|
|
307
|
-
param: z.string().describe('参数描述')
|
|
315
|
+
param: z.string().describe('参数描述'),
|
|
308
316
|
}),
|
|
309
317
|
execute: async (args, framework) => {
|
|
310
|
-
return { success: true, result: args.param }
|
|
311
|
-
}
|
|
312
|
-
})
|
|
313
|
-
return this
|
|
318
|
+
return { success: true, result: args.param };
|
|
319
|
+
},
|
|
320
|
+
});
|
|
321
|
+
return this;
|
|
314
322
|
}
|
|
315
|
-
}
|
|
316
|
-
}
|
|
323
|
+
};
|
|
324
|
+
};
|
|
317
325
|
```
|
|
318
326
|
|
|
319
327
|
#### 单文件结构(兼容)
|
|
@@ -355,57 +363,57 @@ allowed-tools: tool1,tool2
|
|
|
355
363
|
|
|
356
364
|
### 通用工具
|
|
357
365
|
|
|
358
|
-
| 工具
|
|
359
|
-
|
|
360
|
-
| `loadSkill`
|
|
361
|
-
| `list_plugins`
|
|
362
|
-
| `list_tools`
|
|
363
|
-
| `reload_plugins` | 重载插件
|
|
364
|
-
| `shell`
|
|
365
|
-
| `powershell`
|
|
366
|
-
| `python-execute` | 执行 Python 代码
|
|
367
|
-
| `python_script`
|
|
368
|
-
| `pip_install`
|
|
369
|
-
| `install`
|
|
370
|
-
| `mcp_reload`
|
|
371
|
-
| `audit_query`
|
|
366
|
+
| 工具 | 说明 |
|
|
367
|
+
| ---------------- | -------------------- |
|
|
368
|
+
| `loadSkill` | 加载技能 |
|
|
369
|
+
| `list_plugins` | 列出所有插件 |
|
|
370
|
+
| `list_tools` | 列出所有工具 |
|
|
371
|
+
| `reload_plugins` | 重载插件 |
|
|
372
|
+
| `shell` | 执行 Shell 命令 |
|
|
373
|
+
| `powershell` | 执行 PowerShell 命令 |
|
|
374
|
+
| `python-execute` | 执行 Python 代码 |
|
|
375
|
+
| `python_script` | 执行 Python 脚本 |
|
|
376
|
+
| `pip_install` | 安装 Python 包 |
|
|
377
|
+
| `install` | 安装 npm 包 |
|
|
378
|
+
| `mcp_reload` | 重载 MCP 服务器 |
|
|
379
|
+
| `audit_query` | 查询审计日志 |
|
|
372
380
|
|
|
373
381
|
### 子 Agent 管理工具
|
|
374
382
|
|
|
375
|
-
| 工具
|
|
376
|
-
|
|
377
|
-
| `subagent_list`
|
|
378
|
-
| `subagent_call`
|
|
379
|
-
| `subagent_reload` | 重新加载子Agent配置
|
|
383
|
+
| 工具 | 说明 |
|
|
384
|
+
| ----------------- | ------------------------- |
|
|
385
|
+
| `subagent_list` | 列出所有子Agent |
|
|
386
|
+
| `subagent_call` | 调用指定的子Agent处理任务 |
|
|
387
|
+
| `subagent_reload` | 重新加载子Agent配置 |
|
|
380
388
|
|
|
381
389
|
### 会话工具
|
|
382
390
|
|
|
383
|
-
| 工具
|
|
384
|
-
|
|
385
|
-
| `session_create`
|
|
386
|
-
| `session_get`
|
|
387
|
-
| `session_list`
|
|
388
|
-
| `session_delete`
|
|
391
|
+
| 工具 | 说明 |
|
|
392
|
+
| ----------------- | ------------ |
|
|
393
|
+
| `session_create` | 创建会话 |
|
|
394
|
+
| `session_get` | 获取会话 |
|
|
395
|
+
| `session_list` | 列出所有会话 |
|
|
396
|
+
| `session_delete` | 删除会话 |
|
|
389
397
|
| `session_history` | 获取会话历史 |
|
|
390
398
|
|
|
391
399
|
### 定时任务工具
|
|
392
400
|
|
|
393
|
-
| 工具
|
|
394
|
-
|
|
395
|
-
| `schedule_task`
|
|
396
|
-
| `schedule_list`
|
|
397
|
-
| `schedule_cancel` | 取消定时任务
|
|
398
|
-
| `cron_examples`
|
|
401
|
+
| 工具 | 说明 |
|
|
402
|
+
| ----------------- | -------------- |
|
|
403
|
+
| `schedule_task` | 创建定时任务 |
|
|
404
|
+
| `schedule_list` | 列出定时任务 |
|
|
405
|
+
| `schedule_cancel` | 取消定时任务 |
|
|
406
|
+
| `cron_examples` | 显示 cron 示例 |
|
|
399
407
|
|
|
400
408
|
### Ambient Agent 工具
|
|
401
409
|
|
|
402
|
-
| 工具
|
|
403
|
-
|
|
404
|
-
| `ambient_goals`
|
|
405
|
-
| `ambient_status`
|
|
406
|
-
| `ambient_think`
|
|
407
|
-
| `ambient_remember` | 存储/检索记忆
|
|
408
|
-
| `ambient_control`
|
|
410
|
+
| 工具 | 说明 |
|
|
411
|
+
| ------------------ | ------------------------------------ |
|
|
412
|
+
| `ambient_goals` | 管理目标(列出/创建/更新/删除/激活) |
|
|
413
|
+
| `ambient_status` | 获取 Ambient Agent 状态 |
|
|
414
|
+
| `ambient_think` | 触发主动思考 |
|
|
415
|
+
| `ambient_remember` | 存储/检索记忆 |
|
|
416
|
+
| `ambient_control` | 控制循环(暂停/恢复/调整) |
|
|
409
417
|
|
|
410
418
|
### 通知事件
|
|
411
419
|
|
|
@@ -424,6 +432,7 @@ allowed-tools: tool1,tool2
|
|
|
424
432
|
## 工作目录
|
|
425
433
|
|
|
426
434
|
CLI 工作目录默认使用执行命令的目录。
|
|
435
|
+
|
|
427
436
|
- `.agent/` 目录会创建在工作目录下
|
|
428
437
|
- 配置文件、插件、技能等都放在工作目录的 `.agent/` 下
|
|
429
438
|
|