<!-- AUTO-GENERATED by scripts/generate-cli-docs.ts — do not edit. Regenerate: yarn docs:gen -->

# pop org

Organization management

## pop org list

List organizations

```text
pop org list [flags]
```

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--chain` | number | no | - | Chain ID (omit to search all chains) |
| `--member` | string | no | - | Filter by member address |

## pop org view

View organization details

```text
pop org view [flags]
```

## pop org status

Quick org health summary

```text
pop org status [flags]
```

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--fast` | boolean | no | `false` | Skip the on-chain module version check (subgraph summary only) |

## pop org activity

Recent org activity (agent heartbeat)

```text
pop org activity [flags]
```

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--since` | number | no | - | Unix timestamp — show changes since this time (default: 30 minutes ago) |

## pop org update-metadata

Update organization metadata

```text
pop org update-metadata [flags]
```

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--background-color` | string | no | - | Background color hex |
| `--description` | string | no | - | Org description |
| `--hide-treasury` | boolean | no | - | Hide treasury in UI |
| `--links` | string | no | - | JSON array of {name, url} links |
| `--logo` | string | no | - | Path to logo image file |
| `--name` | string | no | - | New org name |

## pop org set-metadata-admin

Propose changing the org metadata-admin hat (governance vote)

```text
pop org set-metadata-admin [flags]
```

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--duration` | number | no | `60` | Vote duration in minutes |
| `--hat` | string | yes | - | Hat ID that may edit org metadata directly (0 = clear; topHat fallback applies) |

## pop org deploy

Deploy a new organization

```text
pop org deploy [flags]
```

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--config` | string | yes | - | Path to native authority org deploy config JSON file |
| `--deployer` | string | no | - | Public deployer address for an unsigned dry run (no private key needed) |

## pop org deploy-config

Generate a deploy config file

```text
pop org deploy-config [flags]
```

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--description` | string | no | `""` | Organization description |
| `--name` | string | yes | - | Organization name |
| `--output` | string | no | `org-deploy-config.json` | Output file path |
| `--template` | string | no | `standard` | Config template (choices: `standard`, `minimal`) |
| `--username` | string | yes | - | Deployer username |

## pop org roles

List org roles with hat IDs and vouch requirements

```text
pop org roles [flags]
```

## pop org members

List org members with activity metrics

```text
pop org members [flags]
```

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--all` | boolean | no | `false` | Include lapsed or unaccepted membership records |

## pop org audit

Generate governance transparency audit

```text
pop org audit [flags]
```

## pop org explore

Scan all POP orgs across chains

```text
pop org explore [flags]
```

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--chain` | number | no | - | Filter to specific chain |
| `--detail` | string | no | - | Deep-scan a specific org by name |
| `--opportunities` | boolean | no | `false` | Show actionable opportunities for Argus |

## pop org health-score

Compute org health score (0-100)

```text
pop org health-score [flags]
```

## pop org audit-external

Generate governance audit for any POP org

```text
pop org audit-external [flags]
```

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--chain` | number | no | - | Chain ID (omit to search all) |
| `--pin` | boolean | no | `false` | Pin report to IPFS |
| `--target` | string | yes | - | Org name to audit |

## pop org audit-all

Ecosystem health report — audit all POP orgs

```text
pop org audit-all [flags]
```

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--pin` | boolean | no | `false` | Pin ecosystem report to IPFS |

## pop org outreach

Generate engagement message for a target org

```text
pop org outreach [flags]
```

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--snapshot` | string | no | - | Snapshot space ID (e.g. ens.eth) — use audit-snapshot instead of POP audit |
| `--target` | string | yes | - | Target org name to generate outreach for |

## pop org audit-snapshot

Audit governance for any Snapshot DAO

```text
pop org audit-snapshot [flags]
```

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--pin` | boolean | no | `false` | Pin report to IPFS |
| `--space` | string | yes | - | Snapshot space ID (e.g. ens.eth) |

## pop org audit-safe

Audit treasury for any Safe multisig

```text
pop org audit-safe [flags]
```

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--address` | string | yes | - | Safe multisig address |
| `--pin` | boolean | no | `false` | Pin report to IPFS |

## pop org audit-full

Combined governance + treasury audit for any DAO

```text
pop org audit-full [flags]
```

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--name` | string | yes | - | DAO name for report |
| `--pin` | boolean | no | `false` | Pin report to IPFS |
| `--safe` | string | yes | - | Safe multisig address |
| `--snapshot` | string | yes | - | Snapshot space ID (e.g. ens.eth) |

## pop org audit-governor

Audit on-chain Governor DAO governance

```text
pop org audit-governor [flags]
```

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--address` | string | yes | - | Governor contract address |
| `--blocks` | number | no | `500000` | Number of blocks to scan for events |
| `--pin` | boolean | no | `false` | Pin report to IPFS |

## pop org gaas-status

GaaS pipeline dashboard — audits, distribution, revenue

```text
pop org gaas-status [flags]
```

## pop org publish

Convert IPFS content to shareable HTML page with Open Graph tags

```text
pop org publish [flags]
```

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--cid` | string | yes | - | IPFS CID of content to publish |
| `--description` | string | no | `""` | Page description for social sharing |
| `--title` | string | yes | - | Page title |

## pop org leaderboard

Governance health leaderboard — rank multiple DAOs

```text
pop org leaderboard [flags]
```

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--pin` | boolean | no | `false` | Pin leaderboard to IPFS |
| `--spaces` | string | yes | - | Comma-separated Snapshot space IDs (e.g. aave.eth,comp-vote.eth) |

## pop org audit-request

Generate a governance audit request with pricing

```text
pop org audit-request [flags]
```

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--concerns` | string | no | - | Specific governance concerns to investigate |
| `--members` | number | no | - | Approximate member count |
| `--org-name` | string | yes | - | Name of the DAO to audit |
| `--pin` | boolean | no | `false` | Pin request to IPFS |
| `--platform` | string | yes | - | Governance platform (choices: `snapshot`, `pop`, `governor`, `moloch`) |
| `--space` | string | no | - | Snapshot space ID (e.g. ens.eth) |
| `--type` | string | no | `standard` | Audit tier (choices: `free`, `standard`, `deep`) |

## pop org portfolio

Generate shareable HTML audit portfolio page

```text
pop org portfolio [flags]
```

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--csv` | boolean | no | `false` | Emit audit DB as CSV to stdout (skips HTML + IPFS) |
| `--pin` | boolean | no | `false` | Pin HTML page to IPFS |

## pop org share

Generate platform-ready posts from IPFS content

```text
pop org share [flags]
```

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--cid` | string | yes | - | IPFS CID of content to share |
| `--platform` | string | yes | - | Target platform (choices: `reddit`, `twitter`, `forum`, `all`) |
| `--title` | string | no | - | Override title |

## pop org publications

Index all shareable IPFS content from completed tasks

```text
pop org publications [flags]
```

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--limit` | number | no | `50` | Max tasks to scan |
| `--project` | string | no | - | Filter by project name |
| `--since` | string | no | - | Unix timestamp — only tasks completed after this time |

## pop org compare

Head-to-head governance comparison of two Snapshot DAOs

```text
pop org compare [flags]
```

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--a` | string | yes | - | First Snapshot space (e.g. aave.eth) |
| `--b` | string | yes | - | Second Snapshot space (e.g. compound.eth) |

## pop org compare-time-window

Re-audit a stored AUDIT_DB entry and report drift (codifies the asymmetric-drift research finding)

```text
pop org compare-time-window [flags]
```

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--all` | boolean | no | `false` | Compare ALL stored spaces in SPACE_TO_NAME mapping. Mutually exclusive with --space. |
| `--space` | string | no | - | Snapshot space id (e.g. aavedao.eth). Mutually exclusive with --all. |
| `--threshold` | number | no | `0.01` | Absolute Gini delta to count as drift (default 0.01, slightly above Aavegotchi noise floor) |

## pop org probe-access

Burner-callStatic access-control probe — map a contract's gating model in <5 min, zero gas

```text
pop org probe-access [flags]
```

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--abi` | string | no | - | Path to the ABI JSON file. If omitted, will try src/abi/<contract>.json by name guess; otherwise required. |
| `--address` | string | yes | - | Contract address to probe |
| `--expected-name` | string | no | - | HB#385 (task #390): expected substring in the contract's name() return value. Case-insensitive substring match — 'Compound' matches 'Compound Governor Bravo'. When set, the tool calls name() on the target before probing and warns (non-fatal) if the result doesn't match. Prevents the HB#384 class of error where an audit labeled 'Gitcoin Governor Bravo' was actually probing Uniswap's contract. The name() call always runs even without this flag — result is recorded as contractName in JSON output. |
| `--selectors` | string | no | - | Comma-separated function names or 4-byte selectors to probe. If omitted, probes ALL external/payable functions. |
| `--skip-code-check` | boolean | no | `false` | Skip the on-chain selector existence check. Use when probing behind a proxy (EIP-1967) where the runtime code does not contain the implementation selectors, or when you know the ABI matches the target. |

## pop org audit-vetoken

On-chain top-holder probe for veCRV-family VotingEscrow contracts (task #383)

```text
pop org audit-vetoken [flags]
```

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--chain` | number | no | `1` | Chain ID (default: Ethereum mainnet) |
| `--chunk` | number | no | `10000` | getLogs pagination chunk size in blocks. Default 10000 (most RPCs cap here). |
| `--enumerate` | boolean | no | `false` | Scan recent Deposit events to discover candidate holders. Defaults to the last 50,000 blocks (~7 days on Ethereum). Override with --from-block / --to-block / --chunk. |
| `--enumerate-transfers` | boolean | no | `false` | Task #389 (HB#456): contract-agnostic holder discovery via the underlying ERC20's Transfer(from, to) events filtered to (to == escrow). Catches dormant lockers and works for non-veCRV-family contracts (CvxLockerV2, Convex, etc.). More RPC-expensive per block than --enumerate, so use narrower --from-block windows. |
| `--escrow` | string | yes | - | VotingEscrow contract address (veCRV, veBAL, veFXS, …) |
| `--from-block` | number | no | - | Enumeration lower bound (inclusive). Default: latest - 50000. |
| `--holders` | string | no | - | Comma-separated list of candidate holder addresses to rank. Optional when --enumerate is passed. The two modes can be combined — enumerated addresses are union-ed with the explicit list. |
| `--rpc` | string | no | - | RPC URL override |
| `--to-block` | number | no | - | Enumeration upper bound (inclusive). Default: latest block. |
| `--top` | number | no | `10` | Limit output to the top N holders by current veBalance |
| `--underlying` | string | no | - | Override the underlying ERC20 token address for --enumerate-transfers. If omitted, reads VotingEscrow.token() to get it automatically. |

## pop org audit-participation

Governance participation metrics for external Governor contracts (task #422)

```text
pop org audit-participation [flags]
```

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--address` | string | yes | - | Governor contract address |
| `--chain` | number | no | - | Chain ID (default: POP_DEFAULT_CHAIN or 1) |
| `--chunk` | number | no | - | getLogs pagination chunk size (default: chain-aware) |
| `--from-block` | number | no | - | Start block for VoteCast event scan (default: latest - 500000) |
| `--json` | boolean | no | `false` | - |
| `--rpc` | string | no | - | RPC URL override |
| `--to-block` | number | no | - | End block for event scan (default: latest) |
| `--top` | number | no | `10` | Show top N voters by participation frequency |

_Global flags: --org, --chain, --rpc, --json, --address, --private-key, --dry-run, --yes, --verbose, --quiet, --preflight (see [index.md](index.md))_
