natureco-cli 5.18.3 → 5.20.0
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/CHANGELOG.md +32 -0
- package/package.json +1 -1
- package/skills/a-b-testing/SKILL.md +34 -0
- package/skills/accessibility-audit/SKILL.md +34 -0
- package/skills/agent-memory/SKILL.md +34 -0
- package/skills/agent-orchestration/SKILL.md +34 -0
- package/skills/airunway-aks-setup/SKILL.md +73 -0
- package/skills/algorithmic-art/SKILL.md +405 -0
- package/skills/analytics-setup/SKILL.md +34 -0
- package/skills/api-design/SKILL.md +34 -0
- package/skills/api-versioning/SKILL.md +34 -0
- package/skills/appinsights-instrumentation/SKILL.md +76 -0
- package/skills/audio-transcription/SKILL.md +34 -0
- package/skills/authentication-patterns/SKILL.md +34 -0
- package/skills/authorization-rbac/SKILL.md +34 -0
- package/skills/azure-ai/SKILL.md +71 -0
- package/skills/azure-aigateway/SKILL.md +129 -0
- package/skills/azure-cloud-migrate/SKILL.md +52 -0
- package/skills/azure-compliance/SKILL.md +108 -0
- package/skills/azure-compute/SKILL.md +46 -0
- package/skills/azure-cost/SKILL.md +45 -0
- package/skills/azure-deploy/SKILL.md +97 -0
- package/skills/azure-diagnostics/SKILL.md +151 -0
- package/skills/azure-enterprise-infra-planner/SKILL.md +54 -0
- package/skills/azure-hosted-copilot-sdk/SKILL.md +89 -0
- package/skills/azure-kubernetes/SKILL.md +153 -0
- package/skills/azure-kusto/SKILL.md +231 -0
- package/skills/azure-messaging/SKILL.md +57 -0
- package/skills/azure-prepare/SKILL.md +165 -0
- package/skills/azure-quotas/SKILL.md +276 -0
- package/skills/azure-rbac/SKILL.md +17 -0
- package/skills/azure-reliability/SKILL.md +387 -0
- package/skills/azure-resource-lookup/SKILL.md +108 -0
- package/skills/azure-resource-visualizer/SKILL.md +183 -0
- package/skills/azure-storage/SKILL.md +100 -0
- package/skills/azure-upgrade/SKILL.md +91 -0
- package/skills/azure-validate/SKILL.md +72 -0
- package/skills/backup-strategy/SKILL.md +34 -0
- package/skills/bash-scripting/SKILL.md +34 -0
- package/skills/batch-api-calls/SKILL.md +34 -0
- package/skills/batch-processing/SKILL.md +34 -0
- package/skills/brainstorming/SKILL.md +159 -0
- package/skills/brand-guidelines/SKILL.md +73 -0
- package/skills/brandkit/SKILL.md +798 -0
- package/skills/brutalist-skill/SKILL.md +92 -0
- package/skills/bulk-file-operations/SKILL.md +34 -0
- package/skills/cache-responses/SKILL.md +34 -0
- package/skills/caching-strategy/SKILL.md +34 -0
- package/skills/calendar-optimization/SKILL.md +34 -0
- package/skills/canvas-design/SKILL.md +130 -0
- package/skills/cavecrew/SKILL.md +82 -0
- package/skills/caveman-commit/SKILL.md +65 -0
- package/skills/caveman-help/SKILL.md +63 -0
- package/skills/caveman-review/SKILL.md +55 -0
- package/skills/caveman-stats/SKILL.md +10 -0
- package/skills/changelog-generation/SKILL.md +34 -0
- package/skills/chat-bot-design/SKILL.md +34 -0
- package/skills/chunking-strategy/SKILL.md +34 -0
- package/skills/ci-cd-pipeline/SKILL.md +34 -0
- package/skills/classification-pipeline/SKILL.md +34 -0
- package/skills/claude-api/SKILL.md +356 -0
- package/skills/clipboard-master/SKILL.md +34 -0
- package/skills/code-explanation/SKILL.md +34 -0
- package/skills/code-generation/SKILL.md +34 -0
- package/skills/code-migration/SKILL.md +34 -0
- package/skills/code-review-checklist/SKILL.md +34 -0
- package/skills/composition-patterns/SKILL.md +89 -0
- package/skills/contact-management/SKILL.md +34 -0
- package/skills/content-generation/SKILL.md +34 -0
- package/skills/context-pruning/SKILL.md +34 -0
- package/skills/context-window-management/SKILL.md +34 -0
- package/skills/continuous-improvement/SKILL.md +34 -0
- package/skills/cron-scheduling/SKILL.md +34 -0
- package/skills/cross-platform-compat/SKILL.md +34 -0
- package/skills/csv-processing/SKILL.md +34 -0
- package/skills/daily-journal/SKILL.md +34 -0
- package/skills/data-analysis/SKILL.md +34 -0
- package/skills/data-backup/SKILL.md +34 -0
- package/skills/data-cleaning/SKILL.md +34 -0
- package/skills/data-extraction/SKILL.md +34 -0
- package/skills/data-validation/SKILL.md +34 -0
- package/skills/database-migrations/SKILL.md +34 -0
- package/skills/database-schema-design/SKILL.md +34 -0
- package/skills/decision-mapping/SKILL.md +84 -0
- package/skills/decision-matrix/SKILL.md +34 -0
- package/skills/dependency-management/SKILL.md +34 -0
- package/skills/deploy-to-vercel/SKILL.md +296 -0
- package/skills/design-an-interface/SKILL.md +94 -0
- package/skills/design-doc-mermaid/SKILL.md +498 -0
- package/skills/dev-environment-setup/SKILL.md +34 -0
- package/skills/develop-userscripts/SKILL.md +84 -0
- package/skills/distraction-blocker/SKILL.md +34 -0
- package/skills/doc-coauthoring/SKILL.md +375 -0
- package/skills/docker-optimization/SKILL.md +34 -0
- package/skills/document-template/SKILL.md +34 -0
- package/skills/documentation/SKILL.md +109 -0
- package/skills/documentation-gen/SKILL.md +34 -0
- package/skills/docx/SKILL.md +590 -0
- package/skills/edit-article/SKILL.md +15 -0
- package/skills/efficient-formatting/SKILL.md +34 -0
- package/skills/email-management/SKILL.md +34 -0
- package/skills/email-service/SKILL.md +34 -0
- package/skills/embedding-generation/SKILL.md +34 -0
- package/skills/entity-extraction/SKILL.md +34 -0
- package/skills/entra-agent-id/SKILL.md +356 -0
- package/skills/entra-app-registration/SKILL.md +191 -0
- package/skills/environment-config/SKILL.md +34 -0
- package/skills/error-handling/SKILL.md +34 -0
- package/skills/estimation-techniques/SKILL.md +34 -0
- package/skills/event-driven-architecture/SKILL.md +34 -0
- package/skills/excel-automation/SKILL.md +34 -0
- package/skills/execution-monitoring/SKILL.md +34 -0
- package/skills/expense-tracking/SKILL.md +34 -0
- package/skills/faceless-explainer/SKILL.md +202 -0
- package/skills/fastify/SKILL.md +75 -0
- package/skills/feature-engineering/SKILL.md +34 -0
- package/skills/feature-flags/SKILL.md +34 -0
- package/skills/file-conversion/SKILL.md +34 -0
- package/skills/file-upload-handling/SKILL.md +34 -0
- package/skills/fine-tuning-prep/SKILL.md +34 -0
- package/skills/focus-mode/SKILL.md +34 -0
- package/skills/form-validation/SKILL.md +34 -0
- package/skills/function-calling/SKILL.md +34 -0
- package/skills/general-video/SKILL.md +143 -0
- package/skills/git-guardrails-claude-code/SKILL.md +95 -0
- package/skills/git-workflow/SKILL.md +34 -0
- package/skills/github-actions-docs/SKILL.md +98 -0
- package/skills/goal-setting/SKILL.md +34 -0
- package/skills/gpt-tasteskill/SKILL.md +74 -0
- package/skills/graphql-design/SKILL.md +34 -0
- package/skills/grill-me/SKILL.md +7 -0
- package/skills/grilling/SKILL.md +10 -0
- package/skills/habit-tracker/SKILL.md +34 -0
- package/skills/hallucination-detection/SKILL.md +34 -0
- package/skills/handoff/SKILL.md +16 -0
- package/skills/hyperframes/SKILL.md +152 -0
- package/skills/hyperframes-animation/SKILL.md +82 -0
- package/skills/hyperframes-cli/SKILL.md +109 -0
- package/skills/hyperframes-core/SKILL.md +78 -0
- package/skills/hyperframes-creative/SKILL.md +68 -0
- package/skills/hyperframes-media/SKILL.md +97 -0
- package/skills/image-processing/SKILL.md +34 -0
- package/skills/image-to-code-skill/SKILL.md +1228 -0
- package/skills/imagegen-frontend-mobile/SKILL.md +1465 -0
- package/skills/imagegen-frontend-web/SKILL.md +987 -0
- package/skills/implement/SKILL.md +15 -0
- package/skills/init/SKILL.md +91 -0
- package/skills/internal-comms/SKILL.md +32 -0
- package/skills/json-transformation/SKILL.md +34 -0
- package/skills/keyboard-shortcuts/SKILL.md +34 -0
- package/skills/knowledge-base/SKILL.md +34 -0
- package/skills/knowledge-graph/SKILL.md +34 -0
- package/skills/kubernetes-deployment/SKILL.md +34 -0
- package/skills/language-translation/SKILL.md +34 -0
- package/skills/lark-approval/SKILL.md +56 -0
- package/skills/lark-base/SKILL.md +157 -0
- package/skills/lark-doc/SKILL.md +81 -0
- package/skills/lark-shared/SKILL.md +168 -0
- package/skills/lark-workflow-meeting-summary/SKILL.md +122 -0
- package/skills/linting-neostandard-eslint9/SKILL.md +64 -0
- package/skills/llm-chaining/SKILL.md +34 -0
- package/skills/localization-i18n/SKILL.md +34 -0
- package/skills/logging-best-practices/SKILL.md +34 -0
- package/skills/loop-me/SKILL.md +32 -0
- package/skills/machine-learning-pipeline/SKILL.md +34 -0
- package/skills/meeting-notes/SKILL.md +34 -0
- package/skills/meeting-scheduler/SKILL.md +34 -0
- package/skills/message-queues/SKILL.md +34 -0
- package/skills/message-summarization/SKILL.md +34 -0
- package/skills/microservices-architecture/SKILL.md +34 -0
- package/skills/microsoft-foundry/SKILL.md +262 -0
- package/skills/migrate-to-shoehorn/SKILL.md +118 -0
- package/skills/milestone-tracking/SKILL.md +34 -0
- package/skills/minimalist-skill/SKILL.md +85 -0
- package/skills/model-deployment/SKILL.md +34 -0
- package/skills/model-evaluation/SKILL.md +34 -0
- package/skills/monitoring-setup/SKILL.md +34 -0
- package/skills/monorepo-setup/SKILL.md +34 -0
- package/skills/motion-graphics/SKILL.md +170 -0
- package/skills/multi-agent-systems/SKILL.md +34 -0
- package/skills/music-to-video/SKILL.md +197 -0
- package/skills/network-troubleshooting/SKILL.md +34 -0
- package/skills/node/SKILL.md +94 -0
- package/skills/nodejs-core/SKILL.md +156 -0
- package/skills/note-organization/SKILL.md +34 -0
- package/skills/oauth/SKILL.md +186 -0
- package/skills/obsidian-vault/SKILL.md +59 -0
- package/skills/octocat/SKILL.md +93 -0
- package/skills/openclaw-secure-linux-cloud/SKILL.md +157 -0
- package/skills/opensource-guide-coach/SKILL.md +218 -0
- package/skills/output-skill/SKILL.md +49 -0
- package/skills/package-publishing/SKILL.md +34 -0
- package/skills/password-generator/SKILL.md +34 -0
- package/skills/pdf/SKILL.md +314 -0
- package/skills/pdf-processing/SKILL.md +34 -0
- package/skills/performance-optimization/SKILL.md +34 -0
- package/skills/pomodoro-timer/SKILL.md +34 -0
- package/skills/powershell-automation/SKILL.md +34 -0
- package/skills/pptx/SKILL.md +232 -0
- package/skills/pr-to-video/SKILL.md +235 -0
- package/skills/priority-filtering/SKILL.md +34 -0
- package/skills/product-launch-video/SKILL.md +205 -0
- package/skills/project-tracking/SKILL.md +34 -0
- package/skills/prompt-compression/SKILL.md +34 -0
- package/skills/prompt-engineering/SKILL.md +34 -0
- package/skills/push-notifications/SKILL.md +34 -0
- package/skills/python-appservice-deploy/SKILL.md +36 -0
- package/skills/qa/SKILL.md +130 -0
- package/skills/rag-implementation/SKILL.md +34 -0
- package/skills/rate-limiting/SKILL.md +34 -0
- package/skills/react-best-practices/SKILL.md +149 -0
- package/skills/react-native-skills/SKILL.md +121 -0
- package/skills/react-view-transitions/SKILL.md +320 -0
- package/skills/readme-i18n/SKILL.md +176 -0
- package/skills/real-time-communication/SKILL.md +34 -0
- package/skills/redesign-skill/SKILL.md +178 -0
- package/skills/refactoring-strategy/SKILL.md +34 -0
- package/skills/regex-mastery/SKILL.md +34 -0
- package/skills/remotion/SKILL.md +364 -0
- package/skills/report-generation/SKILL.md +34 -0
- package/skills/request-refactor-plan/SKILL.md +68 -0
- package/skills/research-compiler/SKILL.md +34 -0
- package/skills/resolving-merge-conflicts/SKILL.md +14 -0
- package/skills/responsive-design/SKILL.md +34 -0
- package/skills/rest-api-patterns/SKILL.md +34 -0
- package/skills/retrospectives/SKILL.md +34 -0
- package/skills/risk-assessment/SKILL.md +34 -0
- package/skills/roadmap-creation/SKILL.md +34 -0
- package/skills/running-claude-code-via-litellm-copilot/SKILL.md +263 -0
- package/skills/scaffold-exercises/SKILL.md +106 -0
- package/skills/search-implementation/SKILL.md +34 -0
- package/skills/secrets-management/SKILL.md +34 -0
- package/skills/secure-linux-web-hosting/SKILL.md +162 -0
- package/skills/security-audit/SKILL.md +34 -0
- package/skills/selective-memory/SKILL.md +34 -0
- package/skills/semantic-search/SKILL.md +34 -0
- package/skills/semantic-versioning/SKILL.md +34 -0
- package/skills/sentiment-analysis/SKILL.md +34 -0
- package/skills/seo-optimization/SKILL.md +34 -0
- package/skills/setup-pre-commit/SKILL.md +91 -0
- package/skills/shadcn/SKILL.md +267 -0
- package/skills/simple/SKILL.md +52 -0
- package/skills/skill-creator/SKILL.md +485 -0
- package/skills/skill-optimizer/SKILL.md +47 -0
- package/skills/skills-cli/SKILL.md +281 -0
- package/skills/slack-gif-creator/SKILL.md +254 -0
- package/skills/snipgrapher/SKILL.md +58 -0
- package/skills/snippet-manager/SKILL.md +34 -0
- package/skills/soft-skill/SKILL.md +98 -0
- package/skills/sprint-planning/SKILL.md +34 -0
- package/skills/sql-query-optimization/SKILL.md +34 -0
- package/skills/stakeholder-communication/SKILL.md +34 -0
- package/skills/state-management/SKILL.md +34 -0
- package/skills/statistical-analysis/SKILL.md +34 -0
- package/skills/stitch-skill/SKILL.md +184 -0
- package/skills/streaming-responses/SKILL.md +34 -0
- package/skills/structured-output/SKILL.md +34 -0
- package/skills/summarization-techniques/SKILL.md +34 -0
- package/skills/supabase/SKILL.md +135 -0
- package/skills/supabase-postgres-best-practices/SKILL.md +64 -0
- package/skills/system-diagnostics/SKILL.md +34 -0
- package/skills/systematic-debugging/SKILL.md +296 -0
- package/skills/talking-head-recut/SKILL.md +1191 -0
- package/skills/task-decomposition/SKILL.md +34 -0
- package/skills/task-prioritization/SKILL.md +34 -0
- package/skills/taste-skill/SKILL.md +1206 -0
- package/skills/taste-skill-v1/SKILL.md +226 -0
- package/skills/tdd/SKILL.md +108 -0
- package/skills/teach/SKILL.md +140 -0
- package/skills/template-library/SKILL.md +34 -0
- package/skills/test-driven-development/SKILL.md +371 -0
- package/skills/test-generation/SKILL.md +34 -0
- package/skills/testing-strategy/SKILL.md +34 -0
- package/skills/text-expansion/SKILL.md +34 -0
- package/skills/theme-factory/SKILL.md +59 -0
- package/skills/time-blocking/SKILL.md +34 -0
- package/skills/to-prd/SKILL.md +75 -0
- package/skills/token-budgeting/SKILL.md +34 -0
- package/skills/token-optimization/SKILL.md +34 -0
- package/skills/tool-calling-patterns/SKILL.md +34 -0
- package/skills/typescript-magician/SKILL.md +117 -0
- package/skills/tzst/SKILL.md +68 -0
- package/skills/ubiquitous-language/SKILL.md +93 -0
- package/skills/use-my-browser/SKILL.md +110 -0
- package/skills/using-superpowers/SKILL.md +121 -0
- package/skills/vector-database-setup/SKILL.md +34 -0
- package/skills/vercel-cli-with-tokens/SKILL.md +353 -0
- package/skills/vercel-optimize/SKILL.md +322 -0
- package/skills/video-editing/SKILL.md +34 -0
- package/skills/viral-instagram-reels/SKILL.md +180 -0
- package/skills/viral-short-form/SKILL.md +147 -0
- package/skills/viral-short-form-ideas/SKILL.md +184 -0
- package/skills/viral-tiktok-content/SKILL.md +180 -0
- package/skills/visualization-creation/SKILL.md +34 -0
- package/skills/web-artifacts-builder/SKILL.md +74 -0
- package/skills/web-design-guidelines/SKILL.md +39 -0
- package/skills/web-scraping/SKILL.md +34 -0
- package/skills/webapp-testing/SKILL.md +96 -0
- package/skills/webhook-handling/SKILL.md +34 -0
- package/skills/website-to-video/SKILL.md +145 -0
- package/skills/weekly-review/SKILL.md +34 -0
- package/skills/workflow-automation/SKILL.md +34 -0
- package/skills/writing-beats/SKILL.md +67 -0
- package/skills/writing-fragments/SKILL.md +79 -0
- package/skills/writing-great-skills/SKILL.md +82 -0
- package/skills/writing-guidelines/SKILL.md +39 -0
- package/skills/writing-plans/SKILL.md +174 -0
- package/skills/writing-shape/SKILL.md +79 -0
- package/skills/xdrop/SKILL.md +78 -0
- package/skills/xget/SKILL.md +87 -0
- package/skills/xlsx/SKILL.md +292 -0
- package/src/commands/code_v5.js +377 -73
- package/src/commands/repl.js +505 -86
- package/src/providers/model/anthropic.js +84 -0
- package/src/providers/model/gemini.js +49 -0
- package/src/providers/model/minimax.js +48 -0
- package/src/providers/model/ollama.js +42 -0
- package/src/providers/model/openai.js +49 -0
- package/src/providers/search/duckduckgo.js +45 -0
- package/src/providers/search/exa.js +52 -0
- package/src/providers/search/searxng.js +51 -0
- package/src/providers/search/tavily.js +47 -0
- package/src/tools/model_provider.js +71 -0
- package/src/tools/parallel_search.js +40 -49
- package/src/tools/search_provider.js +79 -0
- package/src/tools/skills_download.js +217 -0
- package/src/tools/web_search.js +42 -62
- package/src/tools/workflow.js +21 -9
- package/src/utils/cron.js +82 -126
- package/src/utils/effort-levels.js +42 -0
- package/src/utils/fallback-chain.js +72 -0
- package/src/utils/file-history.js +78 -0
- package/src/utils/model-provider.js +113 -0
- package/src/utils/permissions.js +147 -0
- package/src/utils/plan-mode.js +164 -0
- package/src/utils/provider-detect.js +7 -32
- package/src/utils/sandbox.js +60 -0
- package/src/utils/search-provider.js +62 -0
- package/src/utils/session-search.js +66 -0
- package/src/utils/structured-output.js +20 -0
- package/src/utils/system-prompt.js +28 -2
- package/src/utils/tasks.js +132 -0
- package/src/utils/tool-hooks.js +154 -0
- package/src/utils/tools.js +18 -2
- package/src/utils/ultra-review.js +59 -0
- package/src/utils/worktree.js +192 -0
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: lark-doc
|
|
3
|
+
version: 2.0.0
|
|
4
|
+
description: "飞书云文档(Docx / Wiki 文档,v2 API):读取和编辑飞书文档内容。当用户给出文档 URL 或 token,或需要查看、创建、编辑文档、插入或下载文档图片附件时使用。文档中嵌入的电子表格、多维表格、画板,先用本 skill 提取 token 再切到对应 skill。当用户给出 doubao.com 的 /docx/ 或 /wiki/ URL/token 时,也应直接使用本 skill;路由依据是 URL 路径模式和 token,而不是域名。不负责文档评论管理,也不负责表格或 Base 的数据操作。"
|
|
5
|
+
metadata:
|
|
6
|
+
requires:
|
|
7
|
+
bins: ["lark-cli"]
|
|
8
|
+
cliHelp: "lark-cli docs --api-version v2 --help; lark-cli docs +create --api-version v2 --help; lark-cli docs +fetch --api-version v2 --help; lark-cli docs +update --api-version v2 --help; lark-cli docs +resource-download --help; lark-cli docs +resource-update --help; lark-cli docs +resource-delete --help"
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# docs (v2)
|
|
12
|
+
|
|
13
|
+
**身份:文档操作默认使用 `--as user`。首次使用前执行 `lark-cli auth login`。**
|
|
14
|
+
|
|
15
|
+
> **CRITICAL — API 版本:本 skill 使用 v2 API。执行 `docs +create`、`docs +fetch`、`docs +update` 时必须显式传入 `--api-version v2`。**
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
# 常用示例
|
|
19
|
+
lark-cli docs +fetch --api-version v2 --doc "文档URL或token"
|
|
20
|
+
lark-cli docs +create --api-version v2 --content '<title>标题</title><p>内容</p>'
|
|
21
|
+
lark-cli docs +update --api-version v2 --doc "文档URL或token" --command append --content '<p>内容</p>'
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## 前置条件 — 执行操作前必读
|
|
25
|
+
|
|
26
|
+
**CRITICAL — 执行对应操作前,MUST 先用 Read 工具读取以下文件,缺一不可:**
|
|
27
|
+
1. [`../lark-shared/SKILL.md`](../lark-shared/SKILL.md) — 认证、权限处理、全局参数(所有操作通用)
|
|
28
|
+
2. **读取文档(`docs +fetch --api-version v2`)** → 必读 [`lark-doc-fetch.md`](references/lark-doc-fetch.md)(`--scope` / `--detail` 选择、局部读取策略、`<fragment>` / `<excerpt>` 输出结构)
|
|
29
|
+
3. **创建或编辑文档内容** → 必读 [`lark-doc-xml.md`](references/lark-doc-xml.md)(XML 语法规则,仅当用户明确要求 Markdown 时改读 [`lark-doc-md.md`](references/lark-doc-md.md))和 [`lark-doc-style.md`](references/style/lark-doc-style.md)(元素选择、丰富度规则、颜色语义);从零创建时加读 [`lark-doc-create-workflow.md`](references/style/lark-doc-create-workflow.md);编辑已有文档时加读 [`lark-doc-update.md`](references/lark-doc-update.md) 和 [`lark-doc-update-workflow.md`](references/style/lark-doc-update-workflow.md)
|
|
30
|
+
|
|
31
|
+
**未读完以上文件就执行相应操作会导致参数选择错误或格式错误。**
|
|
32
|
+
|
|
33
|
+
> **格式选择规则(全局):**
|
|
34
|
+
> - **创建 / 导入场景**(`docs +create`,或 `docs +update --command append/overwrite` 的整段写入):XML 和 Markdown 都可以。用户提供 `.md` 本地文件、或明确说"导入 Markdown"时,直接用 Markdown;否则默认 XML(可用 callout、grid、checkbox 等富 block)。
|
|
35
|
+
> - **精准编辑场景**(`docs +update` 的 `str_replace` / `block_insert_after` / `block_replace` / `block_delete` / `block_move_after` 等局部精修指令):优先使用 XML(`--doc-format xml`,即默认值)。XML 能稳定表达 block 结构和样式,局部精修更可控;不要因为 Markdown 更简单就自行切换。
|
|
36
|
+
|
|
37
|
+
## 快速决策
|
|
38
|
+
- 先判定任务路径:找文档 / 导入导出走 [`lark-drive`](../lark-drive/SKILL.md);只读 / 摘要用 `docs +fetch` 默认 `simple`;明确旧文本 → 新文本直接 `str_replace`;只有 block 链接、评论锚点、插入 / 替换 / 删除 / 移动才局部 fetch `with-ids`;保真改写已有内容才读 `full`
|
|
39
|
+
- block 直达链接格式:`文档基础 URL#block_id`;没有 block_id 时局部 fetch `with-ids`
|
|
40
|
+
- 连续执行多个文档写操作时,必须按 [`lark-doc-update.md`](references/lark-doc-update.md) 的「Block ID 生命周期」判断旧 block ID 是否还能复用;`overwrite` / `block_replace` / `block_delete` 后不要复用受影响的旧 ID,插入 / 复制后要重新 fetch 才能拿到新 block ID
|
|
41
|
+
- 用户需要在文档内**创建、复制或移动**资源块(画板、电子表格、多维表格等)时,必须先读取 [`lark-doc-xml.md`](references/lark-doc-xml.md) 的「三、资源块」章节
|
|
42
|
+
- 写文档时,由内容和用户意图决定表达形式;流程、架构、路线图、关键指标等信息可以使用画板,但不要默认把重要信息都画板化
|
|
43
|
+
- 新增画板必须隔离到 SubAgent:简单图由 SubAgent 直接插入 `<whiteboard type="svg">完整 SVG</whiteboard>`,不读 `lark-whiteboard`;复杂图才由主 Agent 先建 `<whiteboard type="blank"></whiteboard>`,再启动 SubAgent 读取 `lark-whiteboard` 写入
|
|
44
|
+
- 用户说"看一下文档里的图片/附件/素材""预览素材" → 用 `lark-cli docs +media-preview`
|
|
45
|
+
- 用户明确说"下载素材" → 用 `lark-cli docs +media-download`
|
|
46
|
+
- 用户明确说"下载/更新/删除文档封面图" → 用 `lark-cli docs +resource-download/+resource-update/+resource-delete --type cover`
|
|
47
|
+
- `resource-*` 目前仅支持 Docx 封面资源;其他图片、附件或素材请走 `+media-*`
|
|
48
|
+
- 如果目标是画板/whiteboard/画板缩略图 → 只能用 `lark-cli docs +media-download --type whiteboard`(不要用 `+media-preview`)
|
|
49
|
+
- 拿到 spreadsheet URL/token 后 → 切到 `lark-sheets` 做对象内部操作
|
|
50
|
+
- 用户说"给文档加评论""查看评论""回复评论""给评论加/删除表情 reaction" → 切到 `lark-drive` 处理
|
|
51
|
+
- 文档内容中出现嵌入的 `<sheet>`、`<bitable>` 或 `<cite file-type="sheets|bitable">` 标签时 → **必须主动提取 token 并切到对应技能下钻读取内部数据**,不能只呈现标签本身
|
|
52
|
+
|
|
53
|
+
| 标签 / 属性 | 提取字段 | 切到技能 |
|
|
54
|
+
|-|-|-|
|
|
55
|
+
| `<sheet token="..." sheet-id="...">` | `token` -> spreadsheet_token, `sheet-id` | [`lark-sheets`](../lark-sheets/SKILL.md) |
|
|
56
|
+
| `<bitable token="..." table-id="...">` | `token` -> app_token, `table-id` | [`lark-base`](../lark-base/SKILL.md) |
|
|
57
|
+
| `<cite type="doc" file-type="sheets" token="..." sheet-id="...">` | 同 `<sheet>` | [`lark-sheets`](../lark-sheets/SKILL.md) |
|
|
58
|
+
| `<cite type="doc" file-type="bitable" token="..." table-id="...">` | 同 `<bitable>` | [`lark-base`](../lark-base/SKILL.md) |
|
|
59
|
+
| `<vc-transcribe-tab vc-node-id="...">` | `vc-node-id` -> note_id | [`lark-note`](../lark-note/SKILL.md):先 `note +detail --note-id <vc-node-id>` |
|
|
60
|
+
| `<synced_reference src-token="..." src-block-id="...">` | `src-token` -> doc_token, `src-block-id` -> block_id | 用 `docs +fetch --api-version v2` 读取 src-token 文档,定位 block |
|
|
61
|
+
|
|
62
|
+
## Shortcuts(推荐优先使用)
|
|
63
|
+
|
|
64
|
+
Shortcut 是对常用操作的高级封装(`lark-cli docs +<verb> [flags]`)。有 Shortcut 的操作优先使用。
|
|
65
|
+
|
|
66
|
+
| Shortcut | 说明 |
|
|
67
|
+
|----------|------|
|
|
68
|
+
| [`+create`](references/lark-doc-create.md) | Create a Lark document (XML / Markdown) |
|
|
69
|
+
| [`+fetch`](references/lark-doc-fetch.md) | Fetch Lark document content (XML / Markdown / im-markdown; `im-markdown` only after fetch for `lark-im`) |
|
|
70
|
+
| [`+update`](references/lark-doc-update.md) | Update a Lark document (str_replace / block_insert_after / block_replace / ...) |
|
|
71
|
+
| [`+media-insert`](references/lark-doc-media-insert.md) | Insert a local image or file at the end of a Lark document (4-step orchestration + auto-rollback). Prefer `--from-clipboard` when the image is already on the system clipboard (screenshots, copy from Feishu/browser); use `--file` only for on-disk sources. |
|
|
72
|
+
| [`+media-download`](references/lark-doc-media-download.md) | Download document media or whiteboard thumbnail (auto-detects extension) |
|
|
73
|
+
| [`+media-preview`](references/lark-doc-media-preview.md) | Preview document media file (auto-detects extension) |
|
|
74
|
+
| [`+resource-download` / `+resource-update` / `+resource-delete`](references/lark-doc-resource-cover.md) | Download, update, or delete a Docx cover image resource with `--type cover` |
|
|
75
|
+
| [`+whiteboard-update`](../lark-whiteboard/references/lark-whiteboard-update.md) | Alias of `whiteboard +update`. Update an existing whiteboard with DSL, Mermaid or PlantUML. Prefer `whiteboard +update`; refer to lark-whiteboard skill for details. |
|
|
76
|
+
|
|
77
|
+
## 不在本 Skill 范围
|
|
78
|
+
|
|
79
|
+
- 文档评论管理 → [`lark-drive`](../lark-drive/SKILL.md)
|
|
80
|
+
- 电子表格或 Base 的数据操作 → [`lark-sheets`](../lark-sheets/SKILL.md) / [`lark-base`](../lark-base/SKILL.md)
|
|
81
|
+
- 云空间文件上传、下载、权限管理 → [`lark-drive`](../lark-drive/SKILL.md)
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: lark-shared
|
|
3
|
+
version: 1.0.0
|
|
4
|
+
description: "Use when first setting up lark-cli, running auth login, switching user/bot identity (--as), handling permission denied or scope errors, needing to update lark-cli, or seeing _notice in JSON output."
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# lark-cli 共享规则
|
|
8
|
+
|
|
9
|
+
本技能指导你如何通过lark-cli操作飞书资源, 以及有哪些注意事项。
|
|
10
|
+
|
|
11
|
+
## 配置初始化
|
|
12
|
+
|
|
13
|
+
首次使用需运行 `lark-cli config init` 完成应用配置。
|
|
14
|
+
|
|
15
|
+
当你帮用户初始化配置时,使用background方式使用下面的命令发起配置应用流程,启动后读取输出,从中提取授权链接并发给用户。
|
|
16
|
+
|
|
17
|
+
**URL 转发规则**:当命令输出 `verification_url`、`verification_uri_complete`、`console_url` 等 URL 字段时:**必须生成二维码**:你必须调用 `lark-cli auth qrcode` 将 URL 转为二维码并展示给用户,这是必须步骤,不要跳过。优先生成 PNG 二维码(--output);仅当用户明确要求时才使用 ASCII(--ascii)。**URL 输出规则**:将 URL 视为不可修改的 opaque string,不要做任何修改(包括 URL 编码/解码、添加空格或标点、重新拼接 query),二维码和链接请一起展示给用户。
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
# 发起配置(该命令会阻塞直到用户打开链接并完成操作或过期)
|
|
21
|
+
lark-cli config init --new
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## 认证
|
|
25
|
+
|
|
26
|
+
### 身份类型
|
|
27
|
+
|
|
28
|
+
两种身份类型,通过 `--as` 切换:
|
|
29
|
+
|
|
30
|
+
| 身份 | 标识 | 获取方式 | 适用场景 |
|
|
31
|
+
|------|------|---------|---------|
|
|
32
|
+
| user 用户身份 | `--as user` | `lark-cli auth login` 等 | 访问用户自己的资源(日历、云空间/云盘/云存储等) |
|
|
33
|
+
| bot 应用身份 | `--as bot` | 自动,只需 appId + appSecret | 应用级操作,访问bot自己的资源 |
|
|
34
|
+
|
|
35
|
+
### 身份选择原则
|
|
36
|
+
|
|
37
|
+
输出的 `[identity: bot/user]` 代表当前身份。bot 与 user 表现差异很大,需确认身份符合目标需求:
|
|
38
|
+
|
|
39
|
+
- **Bot 看不到用户资源**:无法访问用户的日历、云空间(云盘/云存储)文档、邮箱等个人资源。例如 `--as bot` 查日程返回 bot 自己的(空)日历
|
|
40
|
+
- **Bot 无法代表用户操作**:发消息以应用名义发送,创建文档归属 bot
|
|
41
|
+
- **Bot 权限**:只需在飞书开发者后台开通 scope,无需 `auth login`
|
|
42
|
+
- **User 权限**:后台开通 scope + 用户通过 `auth login` 授权,两层都要满足
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
### 权限不足处理
|
|
46
|
+
|
|
47
|
+
遇到权限相关错误时,**根据当前身份类型采取不同解决方案**。
|
|
48
|
+
|
|
49
|
+
错误响应中包含关键信息:
|
|
50
|
+
- `permission_violations`:列出缺失的 scope (N选1)
|
|
51
|
+
- `console_url`:飞书开发者后台的权限配置链接
|
|
52
|
+
- `hint`:建议的修复命令
|
|
53
|
+
|
|
54
|
+
#### Bot 身份(`--as bot`)
|
|
55
|
+
|
|
56
|
+
将错误中的 `console_url` 原样提供给用户,引导去后台开通 scope。**禁止**对 bot 执行 `auth login`。
|
|
57
|
+
|
|
58
|
+
#### User 身份(`--as user`)
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
lark-cli auth login --domain <domain> # 按业务域授权
|
|
62
|
+
lark-cli auth login --scope "<missing_scope>" # 按具体 scope 授权(推荐,符合最小权限原则)
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
**规则**:auth login 必须指定范围(`--domain` 或 `--scope`)。多次 login 的 scope 会累积(增量授权)。
|
|
66
|
+
|
|
67
|
+
#### Agent 代理发起认证(推荐)
|
|
68
|
+
|
|
69
|
+
当你作为 AI agent 需要帮用户完成认证时,优先使用 split-flow,避免在同一轮对话中阻塞等待用户授权:
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
# 发起授权(立即返回 device_code 和 verification_url)
|
|
73
|
+
lark-cli auth login --scope "calendar:calendar:readonly" --no-wait --json
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
拿到 `verification_url` 后,将它原样作为本轮最终消息发给用户,并结束本轮/交还控制权。不要在同一轮中展示 URL 后立刻执行 `--device-code` 阻塞轮询;在不透传中间输出的 agent harness 里,这会导致用户永远看不到 URL。
|
|
77
|
+
|
|
78
|
+
用户回复已完成授权后,再在后续步骤执行:
|
|
79
|
+
|
|
80
|
+
```bash
|
|
81
|
+
lark-cli auth login --device-code <device_code>
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
**Split-Flow 完整步骤**:
|
|
85
|
+
|
|
86
|
+
**第一步:发起授权(当前轮)**
|
|
87
|
+
|
|
88
|
+
1. 执行 `lark-cli auth login --scope "xxx" --no-wait --json`(必须加 `--no-wait --json`)
|
|
89
|
+
2. 从 JSON 输出中提取 `verification_url` 和 `device_code`
|
|
90
|
+
3. 生成二维码:`lark-cli auth qrcode <verification_url> --output "xxx"`
|
|
91
|
+
4. 将 URL 和二维码展示给用户(先 URL,后二维码)
|
|
92
|
+
5. **结束本轮对话前,必须明确告知用户**:"请完成授权后,回来告诉我已授权完成,我会帮你完成后续步骤"
|
|
93
|
+
|
|
94
|
+
**第二步:完成授权(后续轮)**
|
|
95
|
+
|
|
96
|
+
1. 等待用户回复"已完成授权"
|
|
97
|
+
2. **由你(AI agent)亲自执行**:`lark-cli auth login --device-code <device_code>`
|
|
98
|
+
3. 此命令会轮询授权状态并完成登录
|
|
99
|
+
4. 如果返回授权成功,流程结束
|
|
100
|
+
|
|
101
|
+
**关键规则**:
|
|
102
|
+
|
|
103
|
+
- **你必须亲自执行 `--device-code` 命令**,不要指示用户自行执行
|
|
104
|
+
- **不要在同一轮中展示 URL 后立刻执行 `--device-code`**,这会导致用户看不到 URL
|
|
105
|
+
- **禁止缓存 `verification_url` 或 `device_code`**:每次需要授权时,必须重新执行 `lark-cli auth login --no-wait --json` 生成新的链接。不要将授权链接和 device code 存入上下文供后续复用
|
|
106
|
+
|
|
107
|
+
## 更新检查
|
|
108
|
+
|
|
109
|
+
lark-cli 命令执行后,如果检测到新版本,JSON 输出中会包含 `_notice.update` 字段(含 `message`、`command` 等)。
|
|
110
|
+
|
|
111
|
+
**当你在输出中看到 `_notice.update` 时,完成用户当前请求后,主动提议帮用户更新**:
|
|
112
|
+
|
|
113
|
+
1. 告知用户当前版本和最新版本号
|
|
114
|
+
2. 提议执行更新(同时更新 CLI 和 Skills):
|
|
115
|
+
```bash
|
|
116
|
+
lark-cli update
|
|
117
|
+
```
|
|
118
|
+
3. 更新完成后提醒用户:**退出并重新打开 AI Agent** 以加载最新 Skills
|
|
119
|
+
|
|
120
|
+
**重要**:始终使用 `lark-cli update` 更新,它会同时更新 CLI 和 AI Skills。
|
|
121
|
+
|
|
122
|
+
**规则**:不要静默忽略更新提示。即使当前任务与更新无关,也应在完成用户请求后补充告知。
|
|
123
|
+
|
|
124
|
+
## 安全规则
|
|
125
|
+
|
|
126
|
+
- **禁止输出密钥**(appSecret、accessToken)到终端明文。
|
|
127
|
+
- **写入/删除操作前必须确认用户意图**。
|
|
128
|
+
- 用 `--dry-run` 预览危险请求。
|
|
129
|
+
- **文件路径只接受相对路径**:`--file`、`--output`、`--output-dir`、`@file` 等路径参数只接受 cwd 下的相对路径,传绝对路径会报 `unsafe file path`。数据输入(`@file`、大 JSON)优先用 stdin 传入,避免路径和转义问题。
|
|
130
|
+
|
|
131
|
+
## 高风险操作的审批协议(exit 10)
|
|
132
|
+
|
|
133
|
+
lark-cli 对高风险写操作(`risk: "high-risk-write"`)有强制确认门禁。当你不带 `--yes` 调用这类命令时,CLI 会退出码 `10`、并在 stderr 返回如下结构化 envelope:
|
|
134
|
+
|
|
135
|
+
```json
|
|
136
|
+
{
|
|
137
|
+
"ok": false,
|
|
138
|
+
"error": {
|
|
139
|
+
"type": "confirmation_required",
|
|
140
|
+
"message": "drive +delete requires confirmation",
|
|
141
|
+
"hint": "add --yes to confirm",
|
|
142
|
+
"risk": {
|
|
143
|
+
"level": "high-risk-write",
|
|
144
|
+
"action": "drive +delete"
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
**遇到这种情况,不要当普通错误放弃。** 按以下流程处理:
|
|
151
|
+
|
|
152
|
+
1. **识别**:看到子进程 exit code = `10` 且 stderr JSON 里 `error.type == "confirmation_required"`
|
|
153
|
+
2. **向用户确认**:把 `error.risk.action` 和关键参数展示给用户,明确告知"这是高风险操作",等待用户显式同意
|
|
154
|
+
3. **用户同意** → 在你**原始 argv 的末尾追加 `--yes`** 后重试
|
|
155
|
+
4. **用户拒绝** → 终止流程,不要擅自改写参数或跳过门禁
|
|
156
|
+
|
|
157
|
+
**绝对不允许**:
|
|
158
|
+
- 看到 exit 10 就默认加 `--yes` 静默重试(这等于禁用门禁)
|
|
159
|
+
- 把 `confirmation_required` 当网络错误/权限错误处理
|
|
160
|
+
- 在用户没明确同意的前提下追加 `--yes` 重试
|
|
161
|
+
- 用 `sh -c` 等 shell 方式拼接命令重试——用 `exec.Command(argv...)` 参数数组形式,避免 shell 解析把用户参数当作语法
|
|
162
|
+
|
|
163
|
+
提前预判:想先让用户 review 危险操作的具体请求,调用时加 `--dry-run`——它不触发门禁,会打印完整请求详情(URL / body / params),你可以把这个预览给用户看过再去真正执行。
|
|
164
|
+
|
|
165
|
+
### 如何识别一条命令是高风险
|
|
166
|
+
|
|
167
|
+
- shortcut:`lark-cli <service> +<cmd> --help` 顶部会显示 `Risk: high-risk-write`
|
|
168
|
+
- service 命令:`lark-cli schema <service>.<resource>.<method> --format json` 的返回值里 `"risk": "high-risk-write"`
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: lark-workflow-meeting-summary
|
|
3
|
+
version: 1.0.0
|
|
4
|
+
description: "会议纪要整理工作流:汇总指定时间范围内的会议纪要并生成结构化报告。当用户需要整理会议纪要、生成会议周报、回顾一段时间内的会议内容时使用。"
|
|
5
|
+
metadata:
|
|
6
|
+
requires:
|
|
7
|
+
bins: ["lark-cli"]
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# 会议纪要汇总工作流
|
|
11
|
+
|
|
12
|
+
**CRITICAL — 开始前 MUST 先用 Read 工具读取 [`../lark-shared/SKILL.md`](../lark-shared/SKILL.md),其中包含认证、权限处理**。然后阅读 [`../lark-vc/SKILL.md`](../lark-vc/SKILL.md),了解会议纪要相关操作。
|
|
13
|
+
|
|
14
|
+
**CRITICAL — 开始前 MUST 先用 Read 工具读取 [`../lark-vc/references/vc-domain-boundaries.md`](../lark-vc/references/vc-domain-boundaries.md)**,不读将导致命令使用、会议产物决策、领域边界职责判断错误:
|
|
15
|
+
> 1. 了解日历 & VC、会议产物 & 文档的关联关系和职责划分
|
|
16
|
+
> 2. 了解会议产物(妙记和纪要)之间的关联关系,例如:**妙记和纪要产生条件相互独立**
|
|
17
|
+
> 3. 了解不同会议产物的组成部分,以便根据需求决策使用哪种产物的数据
|
|
18
|
+
> 4. 了解会议总结、分析和信息提取的标准流程
|
|
19
|
+
|
|
20
|
+
## 适用场景
|
|
21
|
+
|
|
22
|
+
- "帮我整理这周的会议纪要" / "总结最近的会议" / "生成会议周报"
|
|
23
|
+
- "看看今天开了哪些会" / "回顾过去一周开了哪些会"
|
|
24
|
+
|
|
25
|
+
## 前置条件
|
|
26
|
+
|
|
27
|
+
仅支持 **user 身份**。执行前确保已授权:
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
lark-cli auth login --domain vc # 基础(查询+纪要)
|
|
31
|
+
lark-cli auth login --domain vc,drive # 含读取纪要文档正文、生成文档
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## 工作流
|
|
35
|
+
|
|
36
|
+
```
|
|
37
|
+
{时间范围} ─► vc +search ──► 会议列表 (meeting_ids)
|
|
38
|
+
│
|
|
39
|
+
▼
|
|
40
|
+
vc +detail ──► 获取 note_id
|
|
41
|
+
│
|
|
42
|
+
▼
|
|
43
|
+
note +detail ──► 纪要文档 tokens
|
|
44
|
+
│
|
|
45
|
+
▼
|
|
46
|
+
drive metas batch_query 纪要元数据
|
|
47
|
+
│
|
|
48
|
+
▼
|
|
49
|
+
结构化报告
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
### Step 1: 确定时间范围
|
|
53
|
+
|
|
54
|
+
默认**过去 7 天**。推断规则:"今天"→当天,"这周"→本周一~now,"上周"→上周一~上周日,"这个月"→1日~now。
|
|
55
|
+
|
|
56
|
+
> **注意**:日期转换必须调用系统命令(如 `date`),不要心算。时间范围参数需根据 CLI 实际要求格式化(通常为 `YYYY-MM-DD` 或 ISO 8601)。
|
|
57
|
+
|
|
58
|
+
### Step 2: 查询会议记录
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
# page-size 最大为 30
|
|
62
|
+
lark-cli vc +search --start "<YYYY-MM-DD>" --end "<YYYY-MM-DD>" --format json --page-size 30
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
- 时间范围拆分:搜索的时间范围最大为 1 个月。搜索更长时间范围的会议,需要拆分为多次时间范围为一个月查询。
|
|
66
|
+
- `--end` 为**包含当天**的日期(即查"今天"时 start 和 end 都填今天)
|
|
67
|
+
- `--format json` 输出 JSON 格式,你更佳擅长解析 JSON 数据。
|
|
68
|
+
- `--page-size 30` 每页最多 30 条。
|
|
69
|
+
- 有 `page_token` 时必须继续翻页,收集所有 `id` 字段(meeting-id)
|
|
70
|
+
|
|
71
|
+
### Step 3: 获取纪要元数据
|
|
72
|
+
|
|
73
|
+
1. 查询会议关联的纪要信息
|
|
74
|
+
```bash
|
|
75
|
+
# 首先获取 note_id 和 minute_token
|
|
76
|
+
lark-cli vc +detail --meeting-ids "id1,id2,...,idN"
|
|
77
|
+
|
|
78
|
+
# 然后用 note_id 获取文档 tokens(如有多个需分别获取)
|
|
79
|
+
lark-cli note +detail --note-id "note_id"
|
|
80
|
+
```
|
|
81
|
+
- 根据上一步搜集到的 `meeting-id` 查询。
|
|
82
|
+
- 单次最多查询 50 个,超过 50 个需分批调用。
|
|
83
|
+
- 部分会议没有 `note_id` 或报错 `no notes available`,在最终输出中标注"无纪要"。
|
|
84
|
+
- 记录每个纪要的 `note_id`(纪要 ID)、`note_display_type`(展示类型:`unknown` / `normal` / `unified`)、`note_doc_token`(纪要文档 Token)和 `verbatim_doc_token`(逐字稿文档 Token)。
|
|
85
|
+
|
|
86
|
+
> **逐字稿路由按 `note_display_type` 决定**(详见 [vc-domain-boundaries.md](../lark-vc/references/vc-domain-boundaries.md) 的 Note 域):
|
|
87
|
+
> - `normal`:逐字稿是独立文档,链接/正文走 `verbatim_doc_token`。
|
|
88
|
+
> - `unified`:逐字稿**不是独立文档**,没有可分享的逐字稿文档链接;需要逐字稿内容时用 `note +transcript --note-id <note_id>`([lark-note](../lark-note/SKILL.md))拉取到本地,报告中标注"unified 纪要"即可。
|
|
89
|
+
|
|
90
|
+
2. 获取纪要文档和逐字稿文档链接
|
|
91
|
+
```bash
|
|
92
|
+
# 学习命令使用方式
|
|
93
|
+
lark-cli schema drive.metas.batch_query
|
|
94
|
+
|
|
95
|
+
# 批量获取纪要文档与逐字稿链接: 一次最多查询 10 个文档
|
|
96
|
+
# 仅对 note_doc_token 与 normal 纪要的 verbatim_doc_token 查询链接
|
|
97
|
+
lark-cli drive metas batch_query --data '{"request_docs": [{"doc_type": "docx", "doc_token": "<doc_token>"}], "with_url": true}'
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
### Step 4: 整理纪要报告
|
|
101
|
+
|
|
102
|
+
根据时间跨度选择输出格式:
|
|
103
|
+
|
|
104
|
+
- **单日汇总**("今天"/"昨天"):用"今日会议概览"标题,逐会议列出会议时间、主题、纪要链接、逐字稿链接(`unified` 纪要无逐字稿链接,标注"unified 纪要,逐字稿需 `note +transcript` 拉取")。
|
|
105
|
+
- **多日/周报**("这周"/"过去 7 天"等):用"会议纪要周报"标题,含概览统计、逐会议详情。
|
|
106
|
+
|
|
107
|
+
### Step 5: 生成文档(可选,用户要求时)
|
|
108
|
+
|
|
109
|
+
阅读 [`../lark-doc/SKILL.md`](../lark-doc/SKILL.md) 学习云文档技能。
|
|
110
|
+
|
|
111
|
+
```bash
|
|
112
|
+
lark-cli docs +create --api-version v2 --doc-format markdown --content $'<title>会议纪要汇总 (<start> - <end>)</title>\n<内容>'
|
|
113
|
+
# 或追加到已有文档
|
|
114
|
+
lark-cli docs +update --api-version v2 --doc "<url_or_token>" --command append --doc-format markdown --content $'<内容>'
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
## 参考
|
|
118
|
+
|
|
119
|
+
- [lark-shared](../lark-shared/SKILL.md) — 认证、权限(必读)
|
|
120
|
+
- [lark-vc](../lark-vc/SKILL.md) — `+search`、`+detail` 详细用法
|
|
121
|
+
- [lark-note](../lark-note/SKILL.md) — `note +detail`、`note +transcript`(unified 纪要逐字稿)
|
|
122
|
+
- [lark-doc](../lark-doc/SKILL.md) — `+fetch`、`+create`、`+update` 详细用法
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: linting-neostandard-eslint9
|
|
3
|
+
description: Configures ESLint v9 flat config and neostandard for JavaScript and TypeScript projects, including migrating from legacy `.eslintrc*` files or the `standard` package. Use when you need to set up or fix linting with `eslint.config.js` or `eslint.config.mjs`, troubleshoot lint errors, configure neostandard rules, migrate from `.eslintrc` to flat config, or integrate linting into CI pipelines and pre-commit hooks.
|
|
4
|
+
metadata:
|
|
5
|
+
tags: linting, neostandard, eslint, eslint9, flat-config, javascript, typescript
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## When to use
|
|
9
|
+
|
|
10
|
+
Use this skill when you need to:
|
|
11
|
+
- Set up linting in a JavaScript or TypeScript project
|
|
12
|
+
- Use `neostandard` as a Standard-like ESLint v9 flat-config baseline
|
|
13
|
+
- Configure `eslint@9` with the flat config system (`eslint.config.js`/`eslint.config.mjs`)
|
|
14
|
+
- Migrate from `standard` to `neostandard` or ESLint v9
|
|
15
|
+
- Migrate from legacy `.eslintrc*` configuration to ESLint v9
|
|
16
|
+
- Run linting consistently in CI and local development
|
|
17
|
+
|
|
18
|
+
## Quick start: basic neostandard setup
|
|
19
|
+
|
|
20
|
+
Install dependencies and create a minimal `eslint.config.js`:
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
npm install --save-dev eslint@9 neostandard
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
```js
|
|
27
|
+
// eslint.config.js
|
|
28
|
+
import neostandard from 'neostandard'
|
|
29
|
+
|
|
30
|
+
export default neostandard()
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
Verify the config works:
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
npx eslint .
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## Common setup workflow (new project)
|
|
40
|
+
|
|
41
|
+
1. Install `eslint@9` and `neostandard` (see Quick start above)
|
|
42
|
+
2. Create `eslint.config.js` with `neostandard()` as the base
|
|
43
|
+
3. Add any project-specific rule overrides on top
|
|
44
|
+
4. Run `npx eslint .` to confirm no config errors
|
|
45
|
+
5. Add a lint script to `package.json`: `"lint": "eslint ."`
|
|
46
|
+
6. Integrate into CI with a non-fix run; use `--fix` only in local workflows
|
|
47
|
+
|
|
48
|
+
## How to use
|
|
49
|
+
|
|
50
|
+
Read individual rule files for implementation details and examples:
|
|
51
|
+
|
|
52
|
+
- [rules/neostandard.md](rules/neostandard.md) - Install, configure, and extend neostandard with ESLint
|
|
53
|
+
- [rules/eslint-v9-flat-config.md](rules/eslint-v9-flat-config.md) - Build ESLint v9 flat config for JS/TS projects
|
|
54
|
+
- [rules/migration-from-standard.md](rules/migration-from-standard.md) - Migrate from `standard` to `neostandard` or ESLint v9
|
|
55
|
+
- [rules/migration-from-legacy-eslint.md](rules/migration-from-legacy-eslint.md) - Migrate from `.eslintrc*` to flat config safely
|
|
56
|
+
- [rules/ci-and-editor-integration.md](rules/ci-and-editor-integration.md) - CI scripts, pre-commit, and editor setup
|
|
57
|
+
|
|
58
|
+
## Core principles
|
|
59
|
+
|
|
60
|
+
- Prefer reproducible linting with pinned major versions
|
|
61
|
+
- Keep config minimal and explicit
|
|
62
|
+
- Use flat config for ESLint v9 projects
|
|
63
|
+
- Treat lint failures as quality gates in CI
|
|
64
|
+
- Enable auto-fix for local workflows, but validate with non-fix CI runs
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: llm-chaining
|
|
3
|
+
description: Chain LLM calls with output parsing, context passing, and conditional branching
|
|
4
|
+
category: AI Agents
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Llm Chaining
|
|
8
|
+
|
|
9
|
+
## Overview
|
|
10
|
+
Chain LLM calls with output parsing, context passing, and conditional branching. This skill helps you apply structured, repeatable methods for consistent results.
|
|
11
|
+
|
|
12
|
+
## When to Use
|
|
13
|
+
- When you need to apply llm chaining best practices
|
|
14
|
+
- When establishing processes or standards for your workflow
|
|
15
|
+
- When training team members on llm chaining
|
|
16
|
+
- When automating or optimizing llm chaining tasks
|
|
17
|
+
|
|
18
|
+
## Instructions
|
|
19
|
+
1. **Assess**: Evaluate the current state, requirements, and constraints
|
|
20
|
+
2. **Plan**: Define the approach, steps, and success criteria
|
|
21
|
+
3. **Execute**: Follow the established patterns and best practices
|
|
22
|
+
4. **Verify**: Check results against expected outcomes and quality standards
|
|
23
|
+
5. **Iterate**: Refine based on feedback and lessons learned
|
|
24
|
+
|
|
25
|
+
## Examples
|
|
26
|
+
```
|
|
27
|
+
User: Help me apply llm chaining for my current project
|
|
28
|
+
Assistant: I'll help you apply llm chaining step by step...
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Related Skills
|
|
32
|
+
- Use with `workflow` tool for orchestrated execution
|
|
33
|
+
- Combine with `task` tool for delegated processing
|
|
34
|
+
- Reference `system-prompt` for system-level integration
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: localization-i18n
|
|
3
|
+
description: Implement i18n with translation files, locale detection, and pluralization rules
|
|
4
|
+
category: Software Development
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Localization I18n
|
|
8
|
+
|
|
9
|
+
## Overview
|
|
10
|
+
Implement i18n with translation files, locale detection, and pluralization rules. This skill helps you apply structured, repeatable methods for consistent results.
|
|
11
|
+
|
|
12
|
+
## When to Use
|
|
13
|
+
- When you need to apply localization i18n best practices
|
|
14
|
+
- When establishing processes or standards for your workflow
|
|
15
|
+
- When training team members on localization i18n
|
|
16
|
+
- When automating or optimizing localization i18n tasks
|
|
17
|
+
|
|
18
|
+
## Instructions
|
|
19
|
+
1. **Assess**: Evaluate the current state, requirements, and constraints
|
|
20
|
+
2. **Plan**: Define the approach, steps, and success criteria
|
|
21
|
+
3. **Execute**: Follow the established patterns and best practices
|
|
22
|
+
4. **Verify**: Check results against expected outcomes and quality standards
|
|
23
|
+
5. **Iterate**: Refine based on feedback and lessons learned
|
|
24
|
+
|
|
25
|
+
## Examples
|
|
26
|
+
```
|
|
27
|
+
User: Help me apply localization i18n for my current project
|
|
28
|
+
Assistant: I'll help you apply localization i18n step by step...
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Related Skills
|
|
32
|
+
- Use with `workflow` tool for orchestrated execution
|
|
33
|
+
- Combine with `task` tool for delegated processing
|
|
34
|
+
- Reference `system-prompt` for system-level integration
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: logging-best-practices
|
|
3
|
+
description: Implement structured logging with levels, context, correlation IDs, and log rotation
|
|
4
|
+
category: Software Development
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Logging Best Practices
|
|
8
|
+
|
|
9
|
+
## Overview
|
|
10
|
+
Implement structured logging with levels, context, correlation IDs, and log rotation. This skill helps you apply structured, repeatable methods for consistent results.
|
|
11
|
+
|
|
12
|
+
## When to Use
|
|
13
|
+
- When you need to apply logging best practices best practices
|
|
14
|
+
- When establishing processes or standards for your workflow
|
|
15
|
+
- When training team members on logging best practices
|
|
16
|
+
- When automating or optimizing logging best practices tasks
|
|
17
|
+
|
|
18
|
+
## Instructions
|
|
19
|
+
1. **Assess**: Evaluate the current state, requirements, and constraints
|
|
20
|
+
2. **Plan**: Define the approach, steps, and success criteria
|
|
21
|
+
3. **Execute**: Follow the established patterns and best practices
|
|
22
|
+
4. **Verify**: Check results against expected outcomes and quality standards
|
|
23
|
+
5. **Iterate**: Refine based on feedback and lessons learned
|
|
24
|
+
|
|
25
|
+
## Examples
|
|
26
|
+
```
|
|
27
|
+
User: Help me apply logging best practices for my current project
|
|
28
|
+
Assistant: I'll help you apply logging best practices step by step...
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Related Skills
|
|
32
|
+
- Use with `workflow` tool for orchestrated execution
|
|
33
|
+
- Combine with `task` tool for delegated processing
|
|
34
|
+
- Reference `system-prompt` for system-level integration
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: loop-me
|
|
3
|
+
description: Grill me about specs for the workflows I want to build, within this workspace.
|
|
4
|
+
disable-model-invocation: true
|
|
5
|
+
argument-hint: "A workflow to design, or nothing to go find one"
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
Run a stateful `/grilling` session whose only output is **workflow** specs. Use the grilling discipline — relentless, one question at a time, a recommended answer attached to each — aimed at the vocabulary and goal below. Create, edit, and delete specs as the grilling resolves things.
|
|
9
|
+
|
|
10
|
+
## The loop lens
|
|
11
|
+
|
|
12
|
+
A **loop** is a recurring pattern in the user's life: their career, their week, their morning, a single repeated activity. Picturing a life as loops within loops reveals how predictable its activities really are — which is what makes them worth **delegating**. Use the lens to find loops worth specifying, and propose ones the user hasn't noticed.
|
|
13
|
+
|
|
14
|
+
A **workflow** is the spec of one loop, made real. You run a workflow on a loop — the loop is its running instantiation. Workflows live in `workflows/*.md` and are the source of truth.
|
|
15
|
+
|
|
16
|
+
## Vocabulary
|
|
17
|
+
|
|
18
|
+
A shared language, reached for only when a workflow calls for it — never a checklist. **Mandate nothing structural**: a workflow needs no AI, no checkpoint, and no schedule unless the grilling shows it does.
|
|
19
|
+
|
|
20
|
+
- **Trigger** — what fires each run: an **event** (a new email, a new issue) or a **schedule** (every morning). Event-triggering is usually the more efficient.
|
|
21
|
+
- **Checkpoint** — a human-in-the-loop point where the user is asked to verify or decide. Some workflows have none and run autonomously; some use no AI at all.
|
|
22
|
+
- **Push right** — defer the checkpoint as far as it will go. Do maximal work before involving the human, so they are asked once, late, with everything prepared.
|
|
23
|
+
- **Brief** — what a checkpoint presents: a tight, decision-ready summary — what was produced, why, and a link down to the asset itself — never the raw output. The user reads a brief, not a draft. Speed of review is imperative.
|
|
24
|
+
|
|
25
|
+
## Definition of done
|
|
26
|
+
|
|
27
|
+
A workflow spec is done when an implementer agent could build it without asking a single question. Grill until then; nothing is done while a question remains.
|
|
28
|
+
|
|
29
|
+
## The workspace
|
|
30
|
+
|
|
31
|
+
- `workflows/*.md` — one spec per workflow.
|
|
32
|
+
- `NOTES.md` — raw notes on the user's world: the tools they use, the channels they process, and their own terminology for both. When it is empty or thin, interview them about their world before specifying anything. Sharpen fuzzy terms into canonical ones as they surface, and record them here.
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: machine-learning-pipeline
|
|
3
|
+
description: Build ML pipelines with feature engineering, training, evaluation, and deployment
|
|
4
|
+
category: Intelligence & General
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Machine Learning Pipeline
|
|
8
|
+
|
|
9
|
+
## Overview
|
|
10
|
+
Build ML pipelines with feature engineering, training, evaluation, and deployment. This skill helps you apply structured, repeatable methods for consistent results.
|
|
11
|
+
|
|
12
|
+
## When to Use
|
|
13
|
+
- When you need to apply machine learning pipeline best practices
|
|
14
|
+
- When establishing processes or standards for your workflow
|
|
15
|
+
- When training team members on machine learning pipeline
|
|
16
|
+
- When automating or optimizing machine learning pipeline tasks
|
|
17
|
+
|
|
18
|
+
## Instructions
|
|
19
|
+
1. **Assess**: Evaluate the current state, requirements, and constraints
|
|
20
|
+
2. **Plan**: Define the approach, steps, and success criteria
|
|
21
|
+
3. **Execute**: Follow the established patterns and best practices
|
|
22
|
+
4. **Verify**: Check results against expected outcomes and quality standards
|
|
23
|
+
5. **Iterate**: Refine based on feedback and lessons learned
|
|
24
|
+
|
|
25
|
+
## Examples
|
|
26
|
+
```
|
|
27
|
+
User: Help me apply machine learning pipeline for my current project
|
|
28
|
+
Assistant: I'll help you apply machine learning pipeline step by step...
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Related Skills
|
|
32
|
+
- Use with `workflow` tool for orchestrated execution
|
|
33
|
+
- Combine with `task` tool for delegated processing
|
|
34
|
+
- Reference `system-prompt` for system-level integration
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: meeting-notes
|
|
3
|
+
description: Generate structured meeting notes with action items, decisions, and attendees
|
|
4
|
+
category: Productivity
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Meeting Notes
|
|
8
|
+
|
|
9
|
+
## Overview
|
|
10
|
+
Generate structured meeting notes with action items, decisions, and attendees. This skill helps you apply structured, repeatable methods for consistent results.
|
|
11
|
+
|
|
12
|
+
## When to Use
|
|
13
|
+
- When you need to apply meeting notes best practices
|
|
14
|
+
- When establishing processes or standards for your workflow
|
|
15
|
+
- When training team members on meeting notes
|
|
16
|
+
- When automating or optimizing meeting notes tasks
|
|
17
|
+
|
|
18
|
+
## Instructions
|
|
19
|
+
1. **Assess**: Evaluate the current state, requirements, and constraints
|
|
20
|
+
2. **Plan**: Define the approach, steps, and success criteria
|
|
21
|
+
3. **Execute**: Follow the established patterns and best practices
|
|
22
|
+
4. **Verify**: Check results against expected outcomes and quality standards
|
|
23
|
+
5. **Iterate**: Refine based on feedback and lessons learned
|
|
24
|
+
|
|
25
|
+
## Examples
|
|
26
|
+
```
|
|
27
|
+
User: Help me apply meeting notes for my current project
|
|
28
|
+
Assistant: I'll help you apply meeting notes step by step...
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Related Skills
|
|
32
|
+
- Use with `workflow` tool for orchestrated execution
|
|
33
|
+
- Combine with `task` tool for delegated processing
|
|
34
|
+
- Reference `system-prompt` for system-level integration
|