diff --git a/README.md b/README.md index e88f811..51b8f9c 100644 --- a/README.md +++ b/README.md @@ -25,6 +25,13 @@ Pages use `title` and `order` front matter; `index.md` is a section's landing pa Use ordinary Markdown rather than executable MDX components. Repository housekeeping belongs outside `docs/` so it is not published as a product page. +Screenshots live in `docs/images/` and are linked with relative Markdown image syntax, such as +`![Alt text](../images/token-page.webp)`; raw HTML `` tags are not resolved. Claire serves +them from this public repository's `main` branch, so an image appears once its change is merged. +Use PNG or WebP under 250 KB, crop to the relevant component, and write descriptive alt text. +Public screenshots must not show test funds, local-fork labels, chain ids of test networks, +test accounts or internal organization names. + Changes go through a pull request with a passing **Docs check** before merging. A second person's approval is not required, so a solo maintainer can merge their own checked PR. CI has read-only repository permissions, uses pinned actions and a dependency lockfile, diff --git a/docs/getting-started/index.md b/docs/getting-started/index.md index f8c0486..9480eae 100644 --- a/docs/getting-started/index.md +++ b/docs/getting-started/index.md @@ -14,6 +14,8 @@ Your personal space and organization workspaces are separate. Personal navigatio Owners and admins can use the optional **Getting started** sidebar checklist. Hide or restore it for the selected organization in **Personal settings → Appearance**; the preference applies to your account in this browser. +![The Finish setting up checklist on a workspace's Home page, grouped under Connect, Publish, Team and Optional, with a Connect Telegram shortcut.](../images/getting-started-checklist.webp) + Claire uses a dark interface. Appearance offers preset or custom accent colours for this browser, not an account-wide theme or a change to your public site's appearance. ## Invite teammates diff --git a/docs/images/change-the-split.webp b/docs/images/change-the-split.webp new file mode 100644 index 0000000..ccc370b Binary files /dev/null and b/docs/images/change-the-split.webp differ diff --git a/docs/images/developer-create-key.webp b/docs/images/developer-create-key.webp new file mode 100644 index 0000000..3e3585a Binary files /dev/null and b/docs/images/developer-create-key.webp differ diff --git a/docs/images/getting-started-checklist.webp b/docs/images/getting-started-checklist.webp new file mode 100644 index 0000000..d7d0775 Binary files /dev/null and b/docs/images/getting-started-checklist.webp differ diff --git a/docs/images/holder-rounds.webp b/docs/images/holder-rounds.webp new file mode 100644 index 0000000..e7d1ba5 Binary files /dev/null and b/docs/images/holder-rounds.webp differ diff --git a/docs/images/launch-form-basics.webp b/docs/images/launch-form-basics.webp new file mode 100644 index 0000000..b02aac6 Binary files /dev/null and b/docs/images/launch-form-basics.webp differ diff --git a/docs/images/launch-form-buyback.webp b/docs/images/launch-form-buyback.webp new file mode 100644 index 0000000..4cdd1bf Binary files /dev/null and b/docs/images/launch-form-buyback.webp differ diff --git a/docs/images/launch-form-creator-share.webp b/docs/images/launch-form-creator-share.webp new file mode 100644 index 0000000..8cf8292 Binary files /dev/null and b/docs/images/launch-form-creator-share.webp differ diff --git a/docs/images/launch-form-economics.webp b/docs/images/launch-form-economics.webp new file mode 100644 index 0000000..67fc92d Binary files /dev/null and b/docs/images/launch-form-economics.webp differ diff --git a/docs/images/launch-form-holder-share.webp b/docs/images/launch-form-holder-share.webp new file mode 100644 index 0000000..3aec096 Binary files /dev/null and b/docs/images/launch-form-holder-share.webp differ diff --git a/docs/images/launch-preview.webp b/docs/images/launch-preview.webp new file mode 100644 index 0000000..b0c21b8 Binary files /dev/null and b/docs/images/launch-preview.webp differ diff --git a/docs/images/new-lock-dialog.webp b/docs/images/new-lock-dialog.webp new file mode 100644 index 0000000..f747853 Binary files /dev/null and b/docs/images/new-lock-dialog.webp differ diff --git a/docs/images/new-lock-revenue.webp b/docs/images/new-lock-revenue.webp new file mode 100644 index 0000000..ef8757b Binary files /dev/null and b/docs/images/new-lock-revenue.webp differ diff --git a/docs/images/proof-badge.webp b/docs/images/proof-badge.webp new file mode 100644 index 0000000..3617ef7 Binary files /dev/null and b/docs/images/proof-badge.webp differ diff --git a/docs/images/proof-locked-supply.webp b/docs/images/proof-locked-supply.webp new file mode 100644 index 0000000..25e92d3 Binary files /dev/null and b/docs/images/proof-locked-supply.webp differ diff --git a/docs/images/proof-page.webp b/docs/images/proof-page.webp new file mode 100644 index 0000000..97faf9b Binary files /dev/null and b/docs/images/proof-page.webp differ diff --git a/docs/images/revenue-split.webp b/docs/images/revenue-split.webp new file mode 100644 index 0000000..e06a66c Binary files /dev/null and b/docs/images/revenue-split.webp differ diff --git a/docs/images/token-page.webp b/docs/images/token-page.webp new file mode 100644 index 0000000..bac6849 Binary files /dev/null and b/docs/images/token-page.webp differ diff --git a/docs/images/vesting-overview.webp b/docs/images/vesting-overview.webp new file mode 100644 index 0000000..b40e0cb Binary files /dev/null and b/docs/images/vesting-overview.webp differ diff --git a/docs/reference/developer-api.md b/docs/reference/developer-api.md index 04df7bb..1342cd4 100644 --- a/docs/reference/developer-api.md +++ b/docs/reference/developer-api.md @@ -16,7 +16,12 @@ Use Claire's read-only REST API from a server, CLI or agent to inspect a workspa 2. Enable **API**, **MCP** or both, choose only the needed read scopes and select a 7-, 30- or 90-day expiry. Previously issued API keys remain API-only. 3. Copy the secret when it appears; Claire retains a hash, not a recoverable copy. Revoke it when no longer needed. Changing its methods or scopes requires explicit manager approval and does not rotate the secret or expiry. -A key stops working if its issuer loses owner or admin membership. Store it in your server environment or agent's secret store, never in browser code, a public variable, a skill file or source control. In **Knowledge**, the source must also be used (**Claire uses**) **and** explicitly approved (**Agents read**); approval defaults off. Existing keys receive no source data until an owner or admin approves the needed sources: lists may be empty and details may return 404. Neither a granted scope nor API/MCP method access alone exposes a source. See [Knowledge and Assets](../sources/context.md). +![The Create key dialog: a name, an access method of API, MCP or Both, read permissions for organization context, Knowledge, asset metadata, Telegram, X mentions and token, and a 7-, 30- or 90-day expiry.](../images/developer-create-key.webp) + +> [!WARNING] +> Store the key in your server environment or agent's secret store, never in browser code, a public variable, a skill file or source control. A key stops working if its issuer loses owner or admin membership. + +In **Knowledge**, the source must also be used (**Claire uses**) **and** explicitly approved (**Agents read**); approval defaults off. Existing keys receive no source data until an owner or admin approves the needed sources: lists may be empty and details may return 404. Neither a granted scope nor API/MCP method access alone exposes a source. See [Knowledge and Assets](../sources/context.md). | Scope | Read access when its sources are externally approved | | --- | --- | diff --git a/docs/sources/token-actions.md b/docs/sources/token-actions.md index 2a527b2..fc62d5a 100644 --- a/docs/sources/token-actions.md +++ b/docs/sources/token-actions.md @@ -10,6 +10,18 @@ In **Token**, the **signing wallet** button designates the organization's wallet > [!IMPORTANT] > Ethereum is coming soon; do not plan a launch, link or lock on it. +## At a glance + +| Task | Where | Who | +| --- | --- | --- | +| Designate the signing wallet | **Token → signing wallet** | The organization owner signs a verification challenge | +| [Launch a token](#launch-and-link-a-token) | **Token → Launch a token** | Owners and admins prepare it; the designated wallet signs | +| [Bring a linked token to Claire](#bring-a-linked-token-to-claire) | **Bring this token to Claire** on the Token page | The creator's designated wallet, once | +| [Change the split](#change-the-split-after-launch) | **Creator fees → Change the split** | The launcher only | +| [Lock tokens](#fund-a-vesting-allocation) | **Vesting → New lock** | Owners and admins prepare it; the designated wallet signs | +| [Publish a holder round](#payout-rounds) | **Creator fees → Publish holder round** | The designated wallet | +| [Share proof](#claire-proof) | The public `/proof//` page | Anyone, no sign-in | + ## Three ways in on Robinhood Chain | | Launch through Claire | Link an existing pons token | Migrate a linked token to Claire | @@ -35,18 +47,45 @@ Removing the designation or a member does not revoke wallet keys, on-chain right ## Launch and link a token -1. Choose who receives the creator share in **Creator share** ([see below](#choose-who-is-paid)): **Me** (the designated wallet, the default), a **Vesting vault** or a **Split**. A vault or split is deployed first, from the designated wallet. -2. Deploy your workspace's **Claire fee router** from the designated wallet. Set the starting project-holder share of trading revenue when you deploy it. You can later [raise the holder share and change the creator share's recipient](#change-the-split-after-launch); the holder share can never go down. Each router launches one token. A router that already exists is reused only when its recipient matches the draft. -3. Enter launch details. Robinhood pons v2 offers every native option: the [launch config, the quote, a creator tax, opening snipe-tax exemptions](#pons-v2-launch-options) and the [buyback](#pons-buyback). Creator fees go to your fee router. Review the live factory settings and costs. An optional initial buy, where available, spends the pair token or wallet ETH; you can also [lock the opening buy](#lock-the-opening-buy). -4. Approve the Claire launch fee to your fee router, and for a pons pair token also the exact initial buy. The router takes them in the launch transaction. If the designated wallet lacks the fee's stablecoin, Claire first offers **Buy with ETH**: one Uniswap swap that buys exactly the missing amount, capped at 1% above the quote, and refunds unused ETH in the same transaction. -5. When the draft passes its checks, select **Launch** to walk through the signed transactions. Each one is prepared and shown for review first: the network, wallet, destination contract, calldata, ETH value, nonce, and costs. Preparing is not submission; submission is not confirmation. -6. Follow each transaction in the signing wallet's **Transactions** until it is verified. If submission is uncertain, use **Check or recover** to refresh it from the chain or verify a transaction hash you know was sent. **Do not resend** an uncertain transaction or abandon it unless you know it was never sent. Confirmations reduce, but do not eliminate, reorganization risk. -7. A verified launch is linked automatically only if the initiating user still has owner/admin access, the wallet designation is unchanged, and no different token is linked. A confirmed transaction can remain unassociated if those checks fail; read its status instead of launching again. +1. **Choose the payee.** Choose who receives the creator share in **Creator share** ([see below](#choose-who-is-paid)): **Me** (the designated wallet, the default), a **Vesting vault** or a **Split**. A vault or split is deployed first, from the designated wallet. +2. **Deploy the fee router.** Deploy your workspace's **Claire fee router** from the designated wallet. Set the starting project-holder share of trading revenue when you deploy it. You can later [raise the holder share and change the creator share's recipient](#change-the-split-after-launch); the holder share can never go down. Each router launches one token. A router that already exists is reused only when its recipient matches the draft. +3. **Enter launch details.** Robinhood pons v2 offers every native option: the [launch config, the quote, a creator tax, opening snipe-tax exemptions](#pons-v2-launch-options) and the [buyback](#pons-buyback). Creator fees go to your fee router. Review the live factory settings and costs. An optional initial buy, where available, spends the pair token or wallet ETH; you can also [lock the opening buy](#lock-the-opening-buy). +4. **Approve the fees.** Approve the Claire launch fee to your fee router, and for a pons pair token also the exact initial buy. The router takes them in the launch transaction. If the designated wallet lacks the fee's stablecoin, Claire first offers **Buy with ETH**: one Uniswap swap that buys exactly the missing amount, capped at 1% above the quote, and refunds unused ETH in the same transaction. +5. **Launch.** When the draft passes its checks, select **Launch** to walk through the signed transactions. Each one is prepared and shown for review first: the network, wallet, destination contract, calldata, ETH value, nonce, and costs. Preparing is not submission; submission is not confirmation. +6. **Follow each transaction.** Follow each transaction in the signing wallet's **Transactions** until it is verified. If submission is uncertain, use **Check or recover** to refresh it from the chain or verify a transaction hash you know was sent. +7. **Check the link.** A verified launch is linked automatically only if the initiating user still has owner/admin access, the wallet designation is unchanged, and no different token is linked. A confirmed transaction can remain unassociated if those checks fail; read its status instead of launching again. + +> [!WARNING] +> **Do not resend** an uncertain transaction or abandon it unless you know it was never sent. Confirmations reduce, but do not eliminate, reorganization risk. To link an existing pons token, use **Link your token** on the Token page or **Settings → Connections**, enter its contract address and select Robinhood Chain. Claire verifies the chain, factory, and designated wallet requirements. One workspace has one active linked token; resolve its existing link before starting a different launch. Stock-linked assets, which Ethereum (coming soon) will use, involve issuer, oracle, market and securities-compliance risks. See the [Token guide](token.md) before interpreting market or creator-fee figures. +### The launch form + +The launch form is one page, saved for your team as you type. Nothing is signed there; the Token page tells you whether the draft is ready to launch. **Edit draft** goes back to any field, and **Discard draft** clears every field for your whole team without changing anything on-chain. + +Choose the network, name the token and add optional links: + +![Sections 1 to 3 of the launch form: the pons network selected with Stockereum marked Coming soon, name, symbol, description and logo fields, and optional X, Telegram, website, Discord and Farcaster links.](../images/launch-form-basics.webp) + +**Economics** sets the quote asset and the creator tax, and shows the bonding curve: + +![Section 4 of the launch form: the quote asset picker with ETH and tokenised-stock pair tokens, the creator tax slider at 0%, and the bonding curve summary.](../images/launch-form-economics.webp) + +The same section sets the holder share, which can only go up later. The optional initial buy, its slippage and the opening snipe-tax exemptions follow it; see [pons v2 launch options](#pons-v2-launch-options). + +![The holder share slider at 50% with its 90% maximum.](../images/launch-form-holder-share.webp) + +**Creator share** picks the [payee](#choose-who-is-paid): + +![Section 5 of the launch form: the Me, Vesting vault and Split selector, with Me as the default.](../images/launch-form-creator-share.webp) + +The preview beside the form shows the fee arithmetic per USD 100 traded and what you pay before you sign. It is arithmetic, not a forecast. + +![The launch preview for a 50% holder share: trading revenue per 100 traded split between holders, the creator and Claire, then the Claire launch fee, the pons launch fee and network gas.](../images/launch-preview.webp) + ### Choose who is paid The wallet that launches is the **launcher** (the router's `creator`): the only wallet that can launch, switch the buyback or publish the project's holder rounds. The **payee** is who receives the creator share of every distribution. It starts as the one you chose when the router was deployed, and the launcher can [change it with 7 days' public notice](#change-the-split-after-launch). The launcher keeps no claim on revenue once another payee is set. Opening-buy tokens and launch change always go to (or are locked for) the launcher. @@ -61,9 +100,22 @@ A vault or split has no owner, admin, upgrade, cancel or transfer, and Claire's Every Claire fee router lets its launcher (the router's `creator`, the designated wallet that launched or migrated the token) change two things after launch, from the **Change the split** card on **Creator fees** ("Holder share only goes up · destination changes need 7 days' notice"). Nobody else can start either change, and the rest of the split is fixed: Claire's 10% stays, and nobody can take the token out of Claire, because the router never moves the launchpad's creator-fee recipient. +![The Change the split card on Creator fees, with the New holder share field, a pending creator share destination change with Cancel change and Apply change, and the Me, Vesting vault and Split selector.](../images/change-the-split.webp) + +| | Raise the holder share | Change the creator share destination | +| --- | --- | --- | +| Who starts it | The launcher only | The launcher only | +| When it takes effect | At once | After a 7-day public notice | +| Limits | Up to 90%; it can never be lowered | **Me**, a **Vesting vault** or a **Split** | +| Undo | Not possible | **Cancel change**, any time before it takes effect | +| Applies to | Fees collected after the change | Fees collected after the change is applied | + - **Raise the holder share.** Enter the **New holder share (%)** (up to 90%) and select **Raise holder share**, then sign. It takes effect at once. The holder share can only go up: it can never be lowered, so holders can rely on the share they see. Fees the router has earned so far are distributed under the old share first, so the new share applies only to fees collected after the change. You can start from 0%: every router has a holder distributor from the start. - **Change the creator share destination.** Under **Creator share goes to**, choose **Me**, **Vesting vault** or **Split** (a [vault or split](#choose-who-is-paid) is deployed first with **1. Deploy vesting vault** or **1. Deploy split**), then select **Change creator share destination** and sign. The change is public from that moment and takes effect only after a **7-day notice**. Until then the current recipient keeps being paid. While a change is pending the button reads **Replace the proposed change**, which restarts the 7 days. **Cancel change** withdraws it at any time before it takes effect. When the notice has passed, anyone can select **Apply change**, and the first distribution after it goes to the new recipient. Anything the old recipient was already owed stays theirs. +> [!WARNING] +> The holder share can only go up. A destination change is public from the moment you sign it, and **Replace the proposed change** restarts the 7-day notice. + The notice is shown publicly, as "Creator share destination changes to {address, a vesting vault or a split} on {date}": - on the **Token** page, with a link to **Creator fees**; @@ -91,12 +143,15 @@ The launch review repeats the launch config, the graduation threshold and both m ### pons admin powers and fee-recipient monitoring -The Claire contracts cannot remove powers pons keeps for itself. pons' administration is a 2-of-3 Safe. Among its powers, pons can propose a different creator-fee recipient for a launch; the change is public and executes only after a 3-day timelock, and the Claire router cannot block it. A new recipient would bypass the router's split. pons also runs a fee-sweep operator, can disable a launch's buyback, and its fee escrow accepts credits from anyone. +> [!WARNING] +> The Claire contracts cannot remove powers pons keeps for itself. pons' administration is a 2-of-3 Safe. Among its powers, pons can propose a different creator-fee recipient for a launch; the change is public and executes only after a 3-day timelock, and the Claire router cannot block it. A new recipient would bypass the router's split. pons also runs a fee-sweep operator, can disable a launch's buyback, and its fee escrow accepts credits from anyone. Claire re-reads the token's creator-fee recipient on every load of the token page. If pons now pays the token's creator fees to something other than its Claire fee router, or has proposed a change, the Token page and **Creator fees** show a warning: **This token's creator fees no longer go to its fee router**, or **pons has proposed moving this token's creator fees**, with the new recipient and the effective and expiry times in UTC. Check it before relying on the split. ### pons buyback +![The Buyback switch on the launch form, off by default, with its explanation.](../images/launch-form-buyback.webp) + On pons, **Buyback** is off by default and is a switch at launch; the creator wallet can also turn it on or off later from **Creator fees**. When it is on: - pons diverts part of the creator's quote fees to buy the launch token and vests it linearly over 5 years in its buyback vault. The vested tokens are credited to your fee router's escrow balance in the launch token. @@ -108,6 +163,14 @@ On pons, **Buyback** is off by default and is a switch at launch; the creator wa Migration brings a pons token you linked into Claire without relaunching it. Afterwards it counts as launched through Claire. The public Proof page reads **Launched through Claire** and the token gets everything a Claire launch has, except launch-only items such as the locked opening buy: free locks, revenue and price locks, [airdrops to $CLAIRE holders](../reference/claire-holders.md), holder rounds, the buyback through the router, and a creator share paid to you, a vault or a split. +| Migration at a glance | | +| --- | --- | +| Fee | USD 25 once, in the chain's fee stablecoin (USDG on Robinhood Chain), charged only if the adoption succeeds | +| From then on | Claire takes 10% of everything the fee router receives | +| Stays yours | Fees the token earned before migration | +| Who can migrate | The creator's designated wallet, once, on Robinhood Chain | +| Where to start | **Bring this token to Claire** on the Token page, the **Creator fees** payout card or the token's public Proof page | + **What it costs.** A one-time **USD 25** migration fee in the chain's fee stablecoin (USDG on Robinhood Chain), split evenly between the Claire treasury and $CLAIRE holders and paid in the same transaction as the adoption. If the adoption reverts, nothing is charged. From migration onward Claire takes **10%** of everything the fee router receives, the same as for a launch (see [Claire protocol fees](#claire-protocol-fees)). **What stays yours.** Migration is a clean cutoff. Fees the token earned before it are yours, uncharged and never counted as Claire revenue: fees still on the bonding curve or in the graduated pool, anything that reached the router before adoption, and your share of an existing buyback vest. Claire's 10% applies only to what arrives after. Fees already sitting in your own pons escrow balance are untouched. Because these earlier amounts never count as revenue, they cannot advance a revenue lock. @@ -136,6 +199,9 @@ Owners and admins see **Bring this token to Claire** on a linked pons token that 8. **Move the pons fee recipient** to the router (`transferCreatorFeeRecipient`). It takes effect immediately. 9. **Adopt.** The router pays the fee, registers the token and emits `Adopted`. +> [!WARNING] +> Step 8 takes effect immediately. The router has no function that sends the creator-fee recipient elsewhere, so only pons' own administration can change it afterwards, through a public 3-day timelock. Review [pons admin powers](#pons-admin-powers-and-fee-recipient-monitoring) first. + When it settles, the token's Claire features switch on and the public Proof page reads **Launched via Claire: Migrated {date}**. Anyone can [verify it](../reference/verify-on-chain.md#verify-a-launch): the launch path is `migrated`. If the recipient moved but the adoption did not happen, reopen the dialog: it resumes at **Finish migration**, derived from the chain. Do not resend an uncertain transaction; use **Check or recover** as for a launch. @@ -148,6 +214,18 @@ Vesting requires a linked supported pons v2 token. In **Vesting**, **New lock** - **Linear:** tokens become claimable progressively between start and end. - **Catch-up cliff:** nothing is claimable before the cliff; the fraction accrued since the start unlocks at the cliff, then vesting continues linearly. +![The Vesting page for a token with no locks yet: the three steps (approve the exact total, fund the lock, beneficiaries claim) and a New lock button.](../images/vesting-overview.webp) + +The dialog's first step takes the beneficiaries and amounts; the second sets when the tokens unlock: + +![The New lock dialog at step 2, When it unlocks, with Dates, Revenue milestones and Price targets, the Timelock, Linear and Cliff plus linear schedules, and start and end fields in UTC.](../images/new-lock-dialog.webp) + +| Unlock by | Available for | Claire fee | Cancel and transfer | +| --- | --- | --- | --- | +| **Dates** | A linked supported pons v2 token | Free apart from gas for a token launched through Claire or migrated to it; USD 25 per funding transaction otherwise | Noncancelable and nontransferable by default; you can turn either on at creation | +| [**Revenue milestones**](#revenue-locks) | A token launched through Claire whose fee router is set up | None | Never | +| [**Price targets**](#price-target-locks) | A token launched through Claire | None | Never | + A lock is **noncancelable and nontransferable** by default. You can turn on cancellation or beneficiary transfer at creation, before funding. Under **Cancelable** you can add a **Notice period (days)**: the funder must first select **Request cancel**, which starts a public countdown, and can select **Cancel** only after it ends (with no notice, **Cancel lock** works at once). The beneficiary keeps vesting and can claim during the notice, and the refund is computed when the cancellation executes. Verify the beneficiaries, amounts, and dates carefully before funding. 1. Prepare and sign the exact ERC-20 approval from the designated wallet, unless sufficient allowance is already available. Approval grants the lock contract an allowance; it does not fund a lock. For a token launched elsewhere, also approve the Claire lock fee; if the wallet lacks the fee's stablecoin, buy it with ETH first, as for the launch fee. Wait for confirmation. @@ -177,6 +255,8 @@ Every token launch through Claire goes through the workspace's own **fee router* - **Project holders** receive the share you set when you deploy the router, up to 90%. After that the launcher can only raise it, never lower it, and a raise applies to fees collected after it. - **The payee** receives the rest, including rounding remainders: the launcher, a vesting vault or a split, as chosen at launch or changed since with 7 days' public notice. +![The Where trading revenue goes card on Creator fees: per 100 of trading revenue, 60 to project holders, 30 to the creator, 5 to $CLAIRE holders and 5 to the Claire treasury.](../images/revenue-split.webp) + | Per 100 units of trading revenue | Claire treasury | $CLAIRE holders | Payee (creator share) | Project holders | | --- | --- | --- | --- | --- | | Holder sharing off | 5 | 5 | 90 | 0 | @@ -184,11 +264,13 @@ Every token launch through Claire goes through the workspace's own **fee router* **Service fees** are fixed amounts of one USD stablecoin per chain (USDG on Robinhood Chain), with no price oracle, so a depeg changes their real value but not the amount charged. You can pay them with ETH through the swap step above. Each fee is split evenly between the Claire treasury and $CLAIRE holders, and is separate from gas and launchpad fees: -- **Launch:** USD 10, taken by the router in the launch transaction and charged only if the launch succeeds. -- **Migrating a linked token to Claire:** USD 25, once, paid at adoption. See [Bring a linked token to Claire](#bring-a-linked-token-to-claire). -- **Locking a linked token that has not migrated:** USD 25 per funding transaction, however many beneficiaries. It is never a share of the locked tokens. -- **Locking a token launched through Claire or migrated to it:** free apart from gas. Eligibility comes from an on-chain registry that only Claire fee routers can write, for tokens they launched or adopted themselves. Importing or naming a token does not make it eligible. -- **Claims, unlocks, cancellations and transfers:** no Claire fee; gas still applies. +| Service | Claire fee | +| --- | --- | +| **Launch** | USD 10, taken by the router in the launch transaction and charged only if the launch succeeds. | +| **Migrating a linked token to Claire** | USD 25, once, paid at adoption. See [Bring a linked token to Claire](#bring-a-linked-token-to-claire). | +| **Locking a linked token that has not migrated** | USD 25 per funding transaction, however many beneficiaries. It is never a share of the locked tokens. | +| **Locking a token launched through Claire or migrated to it** | Free apart from gas. Eligibility comes from an on-chain registry that only Claire fee routers can write, for tokens they launched or adopted themselves. Importing or naming a token does not make it eligible. | +| **Claims, unlocks, cancellations and transfers** | No Claire fee; gas still applies. | Before you sign, Claire shows the exact payment token and amount, the launchpad's own fees and a gas estimate. @@ -218,6 +300,8 @@ A **revenue lock** holds tokens of a token launched through Claire and releases In **Vesting → New lock**, **Unlock by** offers **Dates** or **Revenue milestones**. Revenue milestones appear only for a token launched through Claire whose fee router is set up. Choosing them replaces the schedule step, and the Options step is skipped because the lock is always noncancelable and nontransferable. +![The New lock dialog with Revenue milestones selected: a milestone of new revenue in ETH with its Unlocks percentage, an Add milestone button, a mandatory fallback date in UTC and the revenue the router has collected so far.](../images/new-lock-revenue.webp) + - **Milestones:** 1 to 10 rows, each a threshold of new router revenue, entered in the quote asset's own units, and an **Unlocks %** share. Thresholds strictly increase and the shares must add up to 100%. The dialog also shows the router's revenue so far. - **Baseline:** thresholds are measured from the router's cumulative revenue at the moment the lock is created, so revenue earned earlier never counts. - **Fallback date:** mandatory, in UTC and in the future. From that date on, everything is unlocked whatever the revenue. @@ -262,6 +346,10 @@ Project-holder distributions, $CLAIRE holder distributions, airdrops and referra Holders claim at `/distributions//`; the claim page shows each asset's rounds, what is promised in total and claimed, and what each connected wallet is owed. +The **Holder rounds** card on **Creator fees** shows what is not yet distributed and is where the designated wallet publishes a round. + +![The Holder rounds card on Creator fees: the amount not yet distributed, a Publish holder round button and a link to the holder claim page.](../images/holder-rounds.webp) + ## Claire Proof Every supported token has a public **Claire Proof** page at `/proof//`. It needs no sign-in, and it resolves for any ERC-20 on a supported network, not only tokens launched through Claire. Its open-graph image and the badge below use the same data. @@ -269,6 +357,8 @@ Every supported token has a public **Claire Proof** page at `/proof// [!NOTE] > **Evidence, not endorsement.** The page states what the chain and Claire's records show. It says nothing about the token's value, the project's intentions or what happens next, and it is not an audit or a liquidity-lock guarantee. +![The top of a Claire Proof page for a migrated token: the share of supply held in Claire locks and the Launch card listing the router, launchpad, creator share recipient, holder share, a pending creator share change, buyback state and fee recipient.](../images/proof-page.webp) + **What it shows.** The header names the token and network and reads **Launched through Claire** or **Not launched through Claire**. Then: - **Locked share:** the percentage of total supply held by the Claire time, revenue and price lock contracts, with the amounts, read in one call at one stated block. It counts every token those contracts hold for this token, including vested but unclaimed tokens and locks the project has not published. These are token allocations, not liquidity locks. @@ -278,8 +368,12 @@ Every supported token has a public **Claire Proof** page at `/proof////badge.svg` is a small static dark badge (320 px wide, no script or fonts) showing **Launched via Claire** (Yes or No), **Locked by Claire locks** (a percentage) and, for Claire-launched tokens, **Revenue routed**. It is cached for about five minutes. The proof page's **Share this proof** card shows it with copy buttons for these snippets (shown with a placeholder URL): ```text diff --git a/docs/sources/token.md b/docs/sources/token.md index b83c1dc..ff27c57 100644 --- a/docs/sources/token.md +++ b/docs/sources/token.md @@ -16,6 +16,8 @@ There are [three ways in](token-actions.md#three-ways-in-on-robinhood-chain): la **Token** brings together the market (a price or holders chart, recent trades and top holders) and, beside it, the token itself, its market figures and its creator fees. **Creator fees**, **Vesting** and **Snapshots** are its sub-pages. Provider observations and the holder index have their own timestamps. A page load is not proof that upstream data was just collected. +![A linked pons v2 token's overview card: contract addresses, bonding-curve progress, supply split into circulating, locked by pons and on the curve, and a notice that the creator share destination changes on a set date.](../images/token-page.webp) + pons v2 uses a bonding curve in its chosen quote (native ETH or an approved pair token) before graduation. ## pons v2 stages and market data