fabric-cli

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Fabric.so CLI agent skill

Fabric.so CLI Agent技能

Use this skill to operate the Fabric.so command-line interface, whose executable is
fabric
. Fabric.so is the personal/team knowledge workspace for notes, docs, files, links, tasks, search, and AI assistant workflows. This skill is not for Microsoft Fabric, Azure, Power BI, OneLake, lakehouses, capacities, semantic models, data pipelines, Daniel Miessler's unrelated Fabric pattern framework, Python Fabric SSH automation, Fabric.js canvas work, or physical cloth/textiles.
本技能用于操作Fabric.so命令行界面(其可执行文件为
fabric
)。Fabric.so是面向个人/团队的知识工作区,支持笔记、文档、文件、链接、任务、搜索及AI助手工作流。本技能不适用于Microsoft Fabric、Azure、Power BI、OneLake、数据仓库、容量、语义模型、数据管道、Daniel Miessler的无关Fabric模式框架、Python Fabric SSH自动化、Fabric.js画布操作或实体布料/纺织品相关场景。

First decision: is this the right Fabric?

首要判断:是否为目标Fabric?

Activate this skill when the user wants to use the Fabric.so CLI from a terminal, especially for library search, saving notes/links/files, workspace navigation, tasks, assistant questions, JSON output, automation, or agent memory.
Do not use this skill when the request is about Microsoft Fabric, Azure, Power BI, OneLake, lakehouses, notebooks, KQL, semantic models, capacities, tenants, deployment pipelines, or the
fab
CLI. Also do not use it for Daniel Miessler's Fabric framework, Fabric.js, Python Fabric SSH, or sewing/textile fabric.
If the user says only "Fabric CLI" and the surrounding terms are ambiguous, inspect the context. Terms such as library, note, bookmark, workspace memory,
fabric save
,
fabric search
, or
fabric ask
point to Fabric.so. Terms such as lakehouse, Power BI, tenant, capacity, OneLake, workspace item, or
fab
point elsewhere.
当用户希望从终端使用Fabric.so CLI,尤其是进行库搜索、保存笔记/链接/文件、工作区导航、任务管理、助手咨询、JSON输出、自动化或Agent内存相关操作时,激活本技能。
若请求涉及Microsoft Fabric、Azure、Power BI、OneLake、数据仓库、笔记本、KQL、语义模型、容量、租户、部署管道或
fab
CLI,请勿使用本技能。同样,请勿将其用于Daniel Miessler的Fabric框架、Fabric.js、Python Fabric SSH或缝纫/纺织面料相关场景。
若用户仅提及"Fabric CLI"且上下文模糊,请检查语境。诸如library、note、bookmark、workspace memory、
fabric save
fabric search
fabric ask
等术语指向Fabric.so;而lakehouse、Power BI、tenant、capacity、OneLake、workspace item或
fab
等术语则指向其他工具。

Source-of-truth rule

事实来源规则

The installed CLI may be newer than this skill. Before using an option not shown here, inspect live help:
bash
fabric --help
fabric help COMMAND
fabric COMMAND --help
Prefer the global
--json
option for parseable, non-interactive output when supported:
bash
fabric --json search "project notes"
fabric --json workspace current
fabric --json task list --todo
If JSON fails, retry without
--json
, inspect command help, and report the limitation. Do not invent JSON schemas; parse defensively.
已安装的CLI版本可能比本技能更新。在使用本文未提及的选项前,请查看实时帮助:
bash
fabric --help
fabric help COMMAND
fabric COMMAND --help
当支持时,优先使用全局
--json
选项以获得可解析的非交互式输出:
bash
fabric --json search "project notes"
fabric --json workspace current
fabric --json task list --todo
若JSON输出失败,请重试不带
--json
的命令,查看命令帮助并报告限制。请勿自行编造JSON模式;需谨慎解析。

Safety and consent rules

安全与同意规则

Treat Fabric as a real remote workspace.
Read-only operations can proceed when relevant:
search
,
path
,
inbox
,
bin
,
workspace current
,
workspace list
,
task list
,
subscription
, and local help/version checks.
State-changing operations require a clear user request:
note
,
link
,
file
,
save
,
create
,
folder
,
task add
,
task done
,
task edit
,
workspace select
, and authentication setup. Destructive or hard-to-reverse operations require explicit confirmation immediately before execution:
task rm
,
logout
, deletion/move/bulk edits if exposed by installed help, and any broad content-changing command discovered from help.
Never run the remote installer unless the user explicitly asked to install Fabric CLI in the current environment. The official installer is:
bash
curl -fsSL https://fabric.so/cli/install.sh | sh
For safer review, download the script to a temporary file, inspect it, then run only with approval.
Never print, store, or save API keys, tokens, passwords, cookies, or private secrets to Fabric. Redact secrets from generated memory notes. Prefer environment variables or browser-based
fabric login
. Use
fabric auth API_KEY
only when the key is already securely available or the user explicitly chooses that route.
Use stdin for long notes and shell-safe quoting for all user-provided text, paths, tags, URLs, titles, parent folders, task titles, and workspace names.
将Fabric视为真实的远程工作区。
以下只读操作可在相关时执行:
search
path
inbox
bin
workspace current
workspace list
task list
subscription
以及本地帮助/版本检查。
状态变更操作需用户明确请求:
note
link
file
save
create
folder
task add
task done
task edit
workspace select
以及认证设置。破坏性或难以撤销的操作需在执行前立即获得明确确认:
task rm
logout
、已安装帮助中显示的删除/移动/批量编辑操作,以及从帮助中发现的任何广泛修改内容的命令。
除非用户明确要求在当前环境中安装Fabric CLI,否则切勿运行远程安装程序。官方安装命令为:
bash
curl -fsSL https://fabric.so/cli/install.sh | sh
为更安全地审核,请将脚本下载到临时文件,检查内容后仅在获得批准时运行。
切勿打印、存储或保存API密钥、令牌、密码、Cookie或私密信息到Fabric。在生成内存笔记时需编辑掉敏感信息。优先使用环境变量或基于浏览器的
fabric login
。仅当密钥已安全可用或用户明确选择该方式时,才使用
fabric auth API_KEY
对于长笔记,请使用标准输入(stdin);对于所有用户提供的文本、路径、标签、URL、标题、父文件夹、任务标题和工作区名称,请使用Shell安全引号。

Fast environment check

快速环境检查

For live workflows, check that the Fabric.so CLI is present and not confused with another Fabric tool:
bash
python3 scripts/fabric_check.py --json
When the user wants to actually use Fabric and read-only account checks are acceptable, run:
bash
python3 scripts/fabric_check.py --deep --json
The checker is read-only. It does not install software, authenticate, write to Fabric, change workspace, or log out.
Use
scripts/fabric_help_cache.py
when you need current command help for several subcommands:
bash
python3 scripts/fabric_help_cache.py --commands search,path,save,task,workspace --json
Use
scripts/fabric_command_plan.py
to build shell-quoted command plans without executing them.
对于实时工作流,请检查Fabric.so CLI是否存在,且未与其他Fabric工具混淆:
bash
python3 scripts/fabric_check.py --json
当用户希望实际使用Fabric且只读账户检查可接受时,运行:
bash
python3 scripts/fabric_check.py --deep --json
该检查器为只读模式。它不会安装软件、进行认证、写入Fabric、切换工作区或登出。
当需要多个子命令的当前命令帮助时,使用
scripts/fabric_help_cache.py
bash
python3 scripts/fabric_help_cache.py --commands search,path,save,task,workspace --json
使用
scripts/fabric_command_plan.py
构建Shell引用的命令计划,而无需执行它们。

Core command map

核心命令映射

The documented top-level usage is:
bash
fabric [options] [command]
Known global options:
bash
fabric --version
fabric --help
fabric --json COMMAND
High-level command purposes:
  • auth API_KEY
    : store an API key for authentication.
  • login
    : browser login.
  • logout
    : clear stored credentials.
  • search [options] [query]
    : search the current Fabric workspace.
  • path [options] [query]
    : browse spaces and folders; no query lists root spaces.
  • create [options] KIND
    : create
    space
    ,
    folder
    ,
    note
    ,
    link
    , or
    file
    resources.
  • note [options] [content]
    : create a note; reads stdin when content is omitted.
  • link [options] URL
    : save a bookmark.
  • file [options] PATH
    : upload a local file.
  • save [options] [input]
    : smart-save a URL, local file path, text, or stdin.
  • folder [options] [name]
    : create a folder, typically in Inbox unless
    --parent
    is supplied.
  • inbox [options]
    : list Inbox items.
  • bin [options]
    : list Bin items.
  • workspace list
    ,
    workspace current
    ,
    workspace select NAME
    : inspect or choose workspaces.
  • ask [options] [question]
    : ask the Fabric AI assistant a question or ask it to do something.
  • task list
    ,
    task add
    ,
    task done
    ,
    task edit
    ,
    task rm
    ,
    task help
    : manage Fabric tasks.
  • completion bash|zsh|fish
    : generate shell completion.
  • help [command]
    : display help.
  • subscription
    : display workspace subscription, usage, and quota information.
Read
references/command-reference.md
for examples and option notes.
已记录的顶层用法为:
bash
fabric [options] [command]
已知全局选项:
bash
fabric --version
fabric --help
fabric --json COMMAND
高级命令用途:
  • auth API_KEY
    : 存储用于认证的API密钥。
  • login
    : 浏览器登录。
  • logout
    : 清除存储的凭据。
  • search [options] [query]
    : 搜索当前Fabric工作区。
  • path [options] [query]
    : 浏览空间和文件夹;无查询时列出根空间。
  • create [options] KIND
    : 创建
    space
    folder
    note
    link
    file
    资源。
  • note [options] [content]
    : 创建笔记;省略内容时读取标准输入。
  • link [options] URL
    : 保存书签。
  • file [options] PATH
    : 上传本地文件。
  • save [options] [input]
    : 智能保存URL、本地文件路径、文本或标准输入内容。
  • folder [options] [name]
    : 创建文件夹,默认在Inbox中,除非指定
    --parent
  • inbox [options]
    : 列出Inbox中的项目。
  • bin [options]
    : 列出Bin中的项目。
  • workspace list
    ,
    workspace current
    ,
    workspace select NAME
    : 查看或选择工作区。
  • ask [options] [question]
    : 向Fabric AI助手提问或请求执行操作。
  • task list
    ,
    task add
    ,
    task done
    ,
    task edit
    ,
    task rm
    ,
    task help
    : 管理Fabric任务。
  • completion bash|zsh|fish
    : 生成Shell补全。
  • help [command]
    : 显示帮助信息。
  • subscription
    : 显示工作区订阅、使用情况和配额信息。
查看
references/command-reference.md
获取示例和选项说明。

Command-selection workflow

命令选择工作流

When finding information, verify workspace if it matters, use
search
for semantic/hybrid retrieval, use
path
for folders/spaces, use
--json
when parsing, and report query/tag/path/workspace limitations. Do not fabricate full item contents if the CLI returns only titles or snippets; use
ask
or another available Fabric connector if deeper content is needed.
When saving content, choose
save
when automatic type detection is enough,
note
/
link
/
file
when the user explicitly requests a type, and
create
when explicit resource control is useful. For long generated text, pipe stdin rather than placing the whole body in a shell argument. Verify by searching for a unique title, phrase, URL, or file name when useful.
When managing tasks, use
fabric task list
first when the task ID is unknown. Match by title, status, due date, and workspace. If multiple plausible tasks exist, ask the user to choose. Use ISO dates such as
YYYY-MM-DD
. Confirm before
task rm
.
When switching workspaces, record
fabric workspace current
, list workspaces if the target name may be ambiguous, run
fabric workspace select "NAME"
only when the user clearly asked or the operation requires it, then re-check current workspace before writing.
When using Fabric as agent memory, retrieve only relevant memory at the start of a task and save only when the user asks, prior instructions establish Fabric memory use, or the user has clearly opted in to persistent project memory. Save decisions, rationale, unresolved questions, next steps, relevant artefacts, and provenance. Do not save noisy transcripts or secrets.
查找信息时,若工作区重要则需验证;使用
search
进行语义/混合检索;使用
path
浏览文件夹/空间;解析时使用
--json
;并报告查询/标签/路径/工作区的限制。若CLI仅返回标题或片段,请勿编造完整项目内容;如需更深入内容,请使用
ask
或其他可用的Fabric连接器。
保存内容时,若自动类型检测足够则选择
save
;若用户明确请求类型则选择
note
/
link
/
file
;若需要明确资源控制则选择
create
。对于长生成文本,请通过管道传递标准输入,而非将整个内容放在Shell参数中。必要时,通过搜索唯一标题、短语、URL或文件名进行验证。
管理任务时,若任务ID未知,请先使用
fabric task list
。通过标题、状态、截止日期和工作区进行匹配。若存在多个可能的任务,请让用户选择。使用ISO格式日期(如
YYYY-MM-DD
)。执行
task rm
前需确认。
切换工作区时,记录
fabric workspace current
;若目标名称可能模糊则列出工作区;仅当用户明确要求或操作需要时,才运行
fabric workspace select "NAME"
;然后在写入前重新检查当前工作区。
将Fabric用作Agent内存时,仅在任务开始时检索相关内存;仅当用户要求、先前指令指定使用Fabric内存或用户明确选择启用持久化项目内存时才进行保存。保存决策、理由、未解决问题、下一步计划、相关工件和来源信息。请勿保存冗余对话记录或敏感信息。

High-value examples

高价值示例

Search and browse:
bash
fabric --json search "meeting notes"
fabric --json search "design" --tag work
fabric --json search --tag reading,todo
fabric --json path
fabric --json path "My Space"
fabric --json path "Inbox/Reports"
Create and save:
bash
fabric --json create note "Meeting summary" --tag work
fabric --json create note "Q1 Review" --parent "Work/Projects"
fabric --json create folder "Projects" --tag client
fabric --json create folder "Archive" --parent "Work" --tag archive
fabric --json create folder "My Space" --parent /
fabric --json create link "https://example.com" --title "Article"
fabric --json create file "$HOME/Desktop/report.pdf"

fabric --json note "Quick reminder" --tag remember
fabric --json link "https://example.com" --title "Article" --tag reading
fabric --json file "$HOME/Downloads/report.pdf" --title "Q4 Report"
fabric --json save "https://example.com" --tag reading
fabric --json save "$HOME/Downloads/doc.pdf" --title "Report"
fabric --json save "Remember to call dentist" --tag personal
Save long generated text safely:
bash
python3 scripts/fabric_memory_note.py \
  --title "Project Atlas handoff" \
  --project project-atlas \
  --summary "Decision: use the high-recall index. Next: benchmark precision." \
  --decision "Use high-recall index for nightly retrieval." \
  --next-step "Benchmark precision next week." \
  --tag handoff \
  --output /tmp/fabric-memory-note.md

fabric --json note --tag agent-memory < /tmp/fabric-memory-note.md
If the installed CLI supports multiple tags on note creation, add the project tag as well after checking help, for example
--tag project-atlas
.
Ask, tasks, workspaces, completion:
bash
fabric --json ask "summarize everything tagged with project-atlas"
fabric --json task list --todo
fabric --json task add "Review PR" --priority HIGH
fabric --json task done TASK_ID
fabric --json workspace list
fabric --json workspace current
fabric workspace select "My Team"
fabric completion zsh
fabric --json subscription
搜索与浏览:
bash
fabric --json search "meeting notes"
fabric --json search "design" --tag work
fabric --json search --tag reading,todo
fabric --json path
fabric --json path "My Space"
fabric --json path "Inbox/Reports"
创建与保存:
bash
fabric --json create note "Meeting summary" --tag work
fabric --json create note "Q1 Review" --parent "Work/Projects"
fabric --json create folder "Projects" --tag client
fabric --json create folder "Archive" --parent "Work" --tag archive
fabric --json create folder "My Space" --parent /
fabric --json create link "https://example.com" --title "Article"
fabric --json create file "$HOME/Desktop/report.pdf"

fabric --json note "Quick reminder" --tag remember
fabric --json link "https://example.com" --title "Article" --tag reading
fabric --json file "$HOME/Downloads/report.pdf" --title "Q4 Report"
fabric --json save "https://example.com" --tag reading
fabric --json save "$HOME/Downloads/doc.pdf" --title "Report"
fabric --json save "Remember to call dentist" --tag personal
安全保存长生成文本:
bash
python3 scripts/fabric_memory_note.py \
  --title "Project Atlas handoff" \
  --project project-atlas \
  --summary "Decision: use the high-recall index. Next: benchmark precision." \
  --decision "Use high-recall index for nightly retrieval." \
  --next-step "Benchmark precision next week." \
  --tag handoff \
  --output /tmp/fabric-memory-note.md

fabric --json note --tag agent-memory < /tmp/fabric-memory-note.md
若已安装的CLI支持在创建笔记时添加多个标签,请在查看帮助后添加项目标签,例如
--tag project-atlas
咨询、任务、工作区、补全:
bash
fabric --json ask "summarize everything tagged with project-atlas"
fabric --json task list --todo
fabric --json task add "Review PR" --priority HIGH
fabric --json task done TASK_ID
fabric --json workspace list
fabric --json workspace current
fabric workspace select "My Team"
fabric completion zsh
fabric --json subscription

Available bundled resources

可用捆绑资源

Use these files on demand rather than loading them all by default:
  • references/command-reference.md
    : detailed command reference and official examples.
  • references/workflows.md
    : repeatable agent workflows for search, save, tasks, workspaces, setup, and memory.
  • references/agent-memory.md
    : how to use Fabric as persistent agent memory.
  • references/security-and-consent.md
    : install, auth, secret-handling, and confirmation boundaries.
  • references/troubleshooting.md
    : common failures and fixes.
  • references/sources.md
    : source provenance and update notes.
  • references/v2-critical-analysis.md
    : audit of v1 and rationale for v2 changes.
  • scripts/fabric_check.py
    : read-only CLI/environment/account diagnostic.
  • scripts/fabric_help_cache.py
    : read-only command-help capture for the installed CLI.
  • scripts/fabric_memory_note.py
    : generate a redacted structured memory note.
  • scripts/fabric_command_plan.py
    : build shell-quoted command plans without execution.
  • scripts/validate_skill.py
    : validate this skill package during authoring.
按需使用以下文件,而非默认加载所有文件:
  • references/command-reference.md
    : 详细命令参考和官方示例。
  • references/workflows.md
    : 可重复使用的Agent工作流,涵盖搜索、保存、任务、工作区、设置和内存。
  • references/agent-memory.md
    : 如何将Fabric用作持久化Agent内存。
  • references/security-and-consent.md
    : 安装、认证、敏感信息处理和确认边界。
  • references/troubleshooting.md
    : 常见故障及解决方法。
  • references/sources.md
    : 来源出处和更新说明。
  • references/v2-critical-analysis.md
    : v1版本审核及v2版本变更理由。
  • scripts/fabric_check.py
    : 只读CLI/环境/账户诊断工具。
  • scripts/fabric_help_cache.py
    : 为已安装的CLI捕获只读命令帮助的工具。
  • scripts/fabric_memory_note.py
    : 生成编辑后的结构化内存笔记。
  • scripts/fabric_command_plan.py
    : 构建Shell引用的命令计划而无需执行。
  • scripts/validate_skill.py
    : 创作期间验证本技能包的工具。

Final response checklist

最终响应检查清单

Before replying after a Fabric CLI workflow, include the workspace used or whether it could not be verified; the command category used without exposing secrets; the created, found, updated, or uploaded item details, or the exact failure class; any uncertainty from missing auth, unsupported CLI options, ambiguous workspace/task matches, or limited output; and one concrete next step when the workflow could not be completed.
在Fabric CLI工作流结束后回复前,请包含以下内容:使用的工作区或无法验证的说明;使用的命令类别(不暴露敏感信息);创建、查找、更新或上传的项目详情,或确切的故障类别;因缺少认证、不支持的CLI选项、模糊的工作区/任务匹配或有限输出导致的任何不确定性;以及当工作流无法完成时的一个具体下一步操作。