attio by membranedev/application-skills
npx skills add https://github.com/membranedev/application-skills --skill attioAttio 是一款 CRM 平台,允许用户构建自定义工作空间来管理客户关系。它被销售团队、客户经理以及其他需要灵活协作方式来跟踪互动和交易的专业人士所使用。
官方文档:https://developer.attio.com/
根据需要使用操作名称和参数。
此技能使用 Membrane CLI 与 Attio 交互。Membrane 会自动处理身份验证和凭据刷新——因此您可以专注于集成逻辑,而不是身份验证的底层细节。
安装 Membrane CLI,以便您可以从终端运行 membrane 命令:
npm install -g @membranehq/cli
membrane login --tenant
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
浏览器窗口将打开以进行身份验证。
无头环境: 运行该命令,复制打印出的 URL 供用户在浏览器中打开,然后使用 membrane login complete <code> 完成验证。
创建新连接:
membrane search attio --elementType=connector --json
从 output.items[0].element?.id 中获取连接器 ID,然后:
membrane connect --connectorId=CONNECTOR_ID --json
用户在浏览器中完成身份验证。输出包含新的连接 ID。
当您不确定连接是否已存在时:
检查现有连接:
membrane connection list --json
如果存在 Attio 连接,请记下其 connectionId。
当您知道要做什么但不确定确切的操作 ID 时:
membrane action list --intent=QUERY --connectionId=CONNECTION_ID --json
这将返回包含 id 和 inputSchema 的操作对象,以便您知道如何运行它。
| 名称 | 键 | 描述 |
|---|---|---|
| 列出记录 | list-records | 列出人员、公司、交易或其他记录,支持可选筛选和排序。 |
| 列出所有列表 | list-all-lists | 检索工作空间中的所有列表。 |
| 列出条目 | list-entries | 列出列表中的条目,支持可选筛选和排序。 |
| 列出对象 | list-objects | 检索工作空间中的所有对象(标准和自定义)。 |
| 列出工作空间成员 | list-workspace-members | 检索当前工作空间中的所有工作空间成员。 |
| 获取记录 | get-record | 通过 ID 获取单个人员、公司、交易或其他记录。 |
| 获取列表 | get-list | 通过 ID 或 slug 检索单个列表。 |
| 获取列表条目 | get-list-entry | 通过 ID 检索单个列表条目。 |
| 获取对象 | get-object | 通过 ID 或 slug 检索特定对象的元数据。 |
| 获取工作空间成员 | get-workspace-member | 通过 ID 检索单个工作空间成员。 |
| 获取任务 | get-task | 通过 ID 检索单个任务。 |
| 获取笔记 | get-note | 通过 ID 检索单个笔记。 |
| 创建记录 | create-record | 在 Attio 中创建新的人员、公司、交易或其他记录。 |
| 创建列表条目 | create-list-entry | 将记录作为新条目添加到列表中。 |
| 创建任务 | create-task | 创建新任务,可选择链接到记录。 |
| 创建笔记 | create-note | 创建附加到人员、公司或其他记录的新笔记。 |
| 更新记录 | update-record | 更新现有记录。 |
| 更新任务 | update-task | 更新现有任务。 |
| 删除记录 | delete-record | 通过 ID 删除单个人员、公司、交易或其他记录。 |
| 删除任务 | delete-task | 通过 ID 删除任务。 |
membrane action run --connectionId=CONNECTION_ID ACTION_ID --json
传递 JSON 参数:
membrane action run --connectionId=CONNECTION_ID ACTION_ID --json --input "{ \"key\": \"value\" }"
当可用操作无法满足您的用例时,您可以通过 Membrane 的代理直接向 Attio API 发送请求。Membrane 会自动将基础 URL 附加到您提供的路径,并注入正确的身份验证头部——包括在凭据过期时透明的刷新。
membrane request CONNECTION_ID /path/to/endpoint
常用选项:
| 标志 | 描述 |
|---|---|
-X, --method | HTTP 方法(GET、POST、PUT、PATCH、DELETE)。默认为 GET |
-H, --header | 添加请求头部(可重复),例如 -H "Accept: application/json" |
-d, --data | 请求体(字符串) |
--json | 发送 JSON 请求体并设置 Content-Type: application/json 的简写 |
--rawData | 按原样发送请求体,不做任何处理 |
--query | 查询字符串参数(可重复),例如 --query "limit=10" |
--pathParam | 路径参数(可重复),例如 --pathParam "id=123" |
membrane action list --intent=QUERY(将 QUERY 替换为您的意图)以查找现有操作。预构建的操作处理了原始 API 调用可能遗漏的分页、字段映射和边界情况。每周安装数
117
代码仓库
GitHub 星标数
18
首次出现
2026年3月4日
安全审计
已安装于
cline116
gemini-cli116
antigravity116
github-copilot116
codex116
kimi-cli116
Attio is a CRM platform that allows users to build custom workspaces to manage their customer relationships. It's used by sales teams, account managers, and other professionals who need a flexible and collaborative way to track interactions and deals.
Official docs: https://developer.attio.com/
Use action names and parameters as needed.
This skill uses the Membrane CLI to interact with Attio. Membrane handles authentication and credentials refresh automatically — so you can focus on the integration logic rather than auth plumbing.
Install the Membrane CLI so you can run membrane from the terminal:
npm install -g @membranehq/cli
membrane login --tenant
A browser window opens for authentication.
Headless environments: Run the command, copy the printed URL for the user to open in a browser, then complete with membrane login complete <code>.
Create a new connection:
membrane search attio --elementType=connector --json
Take the connector ID from output.items[0].element?.id, then:
membrane connect --connectorId=CONNECTOR_ID --json
The user completes authentication in the browser. The output contains the new connection id.
When you are not sure if connection already exists:
Check existing connections:
membrane connection list --json
If a Attio connection exists, note its connectionId
When you know what you want to do but not the exact action ID:
membrane action list --intent=QUERY --connectionId=CONNECTION_ID --json
This will return action objects with id and inputSchema in it, so you will know how to run it.
| Name | Key | Description |
|---|---|---|
| List Records | list-records | Lists people, companies, deals or other records with optional filtering and sorting. |
| List All Lists | list-all-lists | Retrieves all lists in the workspace. |
| List Entries | list-entries | Lists entries in a list with optional filtering and sorting. |
| List Objects | list-objects | Retrieves all objects (standard and custom) in the workspace. |
| List Workspace Members | list-workspace-members | Retrieves all workspace members in the current workspace. |
| Get Record | get-record | Gets a single person, company, deal or other record by its ID. |
| Get List | get-list | Retrieves a single list by its ID or slug. |
| Get List Entry | get-list-entry | Retrieves a single list entry by its ID. |
| Get Object |
membrane action run --connectionId=CONNECTION_ID ACTION_ID --json
To pass JSON parameters:
membrane action run --connectionId=CONNECTION_ID ACTION_ID --json --input "{ \"key\": \"value\" }"
When the available actions don't cover your use case, you can send requests directly to the Attio API through Membrane's proxy. Membrane automatically appends the base URL to the path you provide and injects the correct authentication headers — including transparent credential refresh if they expire.
membrane request CONNECTION_ID /path/to/endpoint
Common options:
| Flag | Description |
|---|---|
-X, --method | HTTP method (GET, POST, PUT, PATCH, DELETE). Defaults to GET |
-H, --header | Add a request header (repeatable), e.g. -H "Accept: application/json" |
-d, --data | Request body (string) |
--json | Shorthand to send a JSON body and set Content-Type: application/json |
--rawData |
membrane action list --intent=QUERY (replace QUERY with your intent) to find existing actions before writing custom API calls. Pre-built actions handle pagination, field mapping, and edge cases that raw API calls miss.Weekly Installs
117
Repository
GitHub Stars
18
First Seen
Mar 4, 2026
Security Audits
Gen Agent Trust HubPassSocketPassSnykPass
Installed on
cline116
gemini-cli116
antigravity116
github-copilot116
codex116
kimi-cli116
GitHub Actions 官方文档查询助手 - 精准解答 CI/CD 工作流问题
40,500 周安装
Next.js 14+ App Router 开发模式指南:服务器组件、并行路由与数据缓存优化
224 周安装
React 19 最佳实践与代码规范指南 | 自动优化、服务端组件、Actions、use() Hook
221 周安装
iOS开发专家技能:精通Swift 6、SwiftUI与原生应用开发,涵盖架构、性能与App Store合规
225 周安装
AI驱动代码审查专家:自动化静态分析、安全漏洞检测与性能优化工具
225 周安装
应用文档自动生成器 | 一键生成结构化用户指南、操作手册与发布文档
95 周安装
文献综述自动化工具:使用paper-search CLI进行系统性学术论文搜索与深度分析
220 周安装
| get-object |
| Retrieves metadata for a specific object by its ID or slug. |
| Get Workspace Member | get-workspace-member | Retrieves a single workspace member by their ID. |
| Get Task | get-task | Retrieves a single task by its ID. |
| Get Note | get-note | Retrieves a single note by its ID. |
| Create Record | create-record | Creates a new person, company, deal or other record in Attio. |
| Create List Entry | create-list-entry | Adds a record to a list as a new entry. |
| Create Task | create-task | Creates a new task, optionally linked to records. |
| Create Note | create-note | Creates a new note attached to a person, company, or other record. |
| Update Record | update-record | Updates an existing record. |
| Update Task | update-task | Updates an existing task. |
| Delete Record | delete-record | Deletes a single person, company, deal or other record by its ID. |
| Delete Task | delete-task | Deletes a task by its ID. |
| Send the body as-is without any processing |
--query | Query-string parameter (repeatable), e.g. --query "limit=10" |
--pathParam | Path parameter (repeatable), e.g. --pathParam "id=123" |