Skill 详情
open-accounting
Supports invoices, bills, journals, charts of accounts, taxes, and accounting reports.
使用前先检查
自动化审核只检查相关性,不代表安全审查或推荐。使用前请阅读来源中的说明。
SKILL.md
这段内容是审核时保存的快照。外部来源才是完整且最新的版本。
---
name: open-accounting
description: |
Open Accounting integration. Manage data, records, and automate workflows. Use when the user wants to interact with Open Accounting data.
compatibility: Requires network access and a valid Membrane account (Free tier supported).
license: MIT
homepage: https://getmembrane.com
repository: https://github.com/membranedev/application-skills
metadata:
author: membrane
version: "1.0"
categories: ""
---
# Open Accounting
Open Accounting is a SaaS app that provides accounting and bookkeeping solutions. It's designed for small to medium-sized businesses to manage their finances, track expenses, and generate reports. Accountants and business owners are the primary users.
Official docs: https://www.openaccounting.org/docs/
## Open Accounting Overview
- **Customer**
- **Invoice**
- **Invoice Line**
- **Bill**
- **Bill Line**
- **Vendor**
- **Chart of Accounts**
- **Account**
- **Journal Entry**
- **Journal Line**
- **Tax Rate**
- **Payment**
- **Product**
- **Company**
- **Credit Note**
- **Debit Note**
- **Currency**
- **Budget**
- **Transfer**
- **Report**
- **User**
- **Role**
- **Session**
- **Attachment**
- **Item**
Use action names and parameters as needed.
## Working with Open Accounting
This skill uses the Membrane CLI to interact with Open Accounting. Membrane handles authentication and credentials refresh automatically — so you can focus on the integration logic rather than auth plumbing.
### Install the CLI
Install the Membrane CLI so you can run `membrane` from the terminal:
```bash
npm install -g @membranehq/cli@latest
```
### Authentication
```bash
membrane login --tenant --clientName=<agentType>
```
This will either open a browser for authentication or print an authorization URL to the console, depending on whether interactive mode is available.
**Headless environments:** The command will print an authorization URL. Ask the user to open it in a browser. When they see a code after completing login, finish with:
```bash
membrane login complete <code>
```
Add `--json` to any command for machine-readable JSON output.
**Agent Types** : claude, openclaw, codex, warp, windsurf, etc. Those will be used to adjust tooling to be used best with your harness
### Connecting to Open Accounting
Use `membrane connection ensure` to find or create a connection by app URL or domain:
```bash
membrane connection ensure "https://openaccounting.io/" --json
```
The user completes authentication in the browser. The output contains the new connection id.
This is the fastest way to get a connection. The URL is normalized to a domain and matched against known apps. If no app is found, one is created and a connector is built automatically.
If the returned connection has `state: "READY"`, skip to **Step 2**.
#### 1b. Wait for the connection to be ready
If the connection is in `BUILDING` state, poll until it's ready:
```bash
npx @membranehq/cli connection get <id> --wait --json
```
The `--wait` flag long-polls (up to `--timeout` seconds, default 30) until the state changes. Keep polling until `state` is no longer `BUILDING`.
The resulting state tells you what to do next:
- **`READY`** — connection is fully set up. Skip to **Step 2**.
- **`CLIENT_ACTION_REQUIRED`** — the user or agent needs to do something. The `clientAction` object describes the required action:
- `clientAction.type` — the kind of action needed:
- `"connect"` — user needs to authenticate (OAuth, API key, etc.). This covers initial authentication and re-authentication for disconnected connections.
- `"provide-input"` — more information is needed (e.g. which app to connect to).
- `clientAction.description` — human-readable explanation of what's needed.
- `clientAction.uiUrl` (optional) — URL to a pre-built UI where the user can complete the action. Show this to the user when present.
- `clientAction.agentInstructions` (optional) — instructions for the AI agent on how to proceed programmatica在 GitHub 阅读完整来源 (打开外部页面)