@artblocks/abx-cli 0.7.0 → 0.7.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +16 -0
- package/dist/ansi.d.ts +24 -0
- package/dist/ansi.d.ts.map +1 -0
- package/dist/ansi.js +28 -0
- package/dist/ansi.js.map +1 -0
- package/dist/commands/deploy.d.ts.map +1 -1
- package/dist/commands/deploy.js +10 -16
- package/dist/commands/deploy.js.map +1 -1
- package/dist/commands/project.d.ts.map +1 -1
- package/dist/commands/project.js +4 -3
- package/dist/commands/project.js.map +1 -1
- package/dist/main.js +4 -4
- package/dist/main.js.map +1 -1
- package/dist/output.d.ts +5 -4
- package/dist/output.d.ts.map +1 -1
- package/dist/output.js +6 -8
- package/dist/output.js.map +1 -1
- package/dist/ownerops.d.ts +6 -0
- package/dist/ownerops.d.ts.map +1 -1
- package/dist/ownerops.js +28 -12
- package/dist/ownerops.js.map +1 -1
- package/dist/riskgate.d.ts.map +1 -1
- package/dist/riskgate.js +3 -5
- package/dist/riskgate.js.map +1 -1
- package/dist/signer.d.ts.map +1 -1
- package/dist/signer.js +1 -6
- package/dist/signer.js.map +1 -1
- package/package.json +2 -2
- package/skill/SKILL.md +15 -6
- package/skill/reference/capabilities.md +24 -11
- package/skill/reference/code.md +11 -4
- package/skill/reference/ecosystem/chains/arbitrum-sepolia.md +11 -0
- package/skill/reference/ecosystem/chains/arbitrum.md +55 -0
- package/skill/reference/ecosystem/chains/base-sepolia.md +11 -0
- package/skill/reference/ecosystem/chains/base.md +10 -0
- package/skill/reference/ecosystem/chains/ethereum.md +10 -0
- package/skill/reference/ecosystem/chains/robinhood-testnet.md +11 -0
- package/skill/reference/ecosystem/chains/robinhood.md +11 -0
- package/skill/reference/ecosystem/chains/sepolia.md +11 -0
- package/skill/reference/ecosystem/durability.md +70 -0
- package/skill/reference/ecosystem/multichain.md +73 -0
- package/skill/reference/ecosystem/tokens.md +63 -0
- package/skill/reference/ecosystem.md +98 -0
- package/skill/reference/ideation.md +29 -0
- package/skill/reference/setup.md +3 -1
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# Multichain integrations
|
|
2
|
+
|
|
3
|
+
Read only the provider relevant to the idea. Coverage below is the intersection reviewed for ABX:
|
|
4
|
+
Ethereum (`1`), Base (`8453`), Arbitrum One (`42161`), not each provider's full network list.
|
|
5
|
+
Official documentation reviewed 2026-10-30; recheck the chosen tool and network before use.
|
|
6
|
+
This starter catalog is not exhaustive; research other protocols when they fit the project's concept.
|
|
7
|
+
Apply [durability guidance](durability.md): official discovery/build tooling does not need to become
|
|
8
|
+
a dependency of the finished NFT. Prefer same-chain EVM reads with self-contained fallback output.
|
|
9
|
+
|
|
10
|
+
## OpenSea — discovery and marketplace context
|
|
11
|
+
|
|
12
|
+
- **Ideas:** research related collections, plan collector-facing metadata and traits, or link to
|
|
13
|
+
the marketplace from a companion site. Keep the NFT usable without OpenSea; do not recommend live
|
|
14
|
+
floor-price/indexed-trait API calls in its artwork or core eligibility logic.
|
|
15
|
+
- **Official route:** [agent tools](https://docs.opensea.io/docs/build-with-ai-agents) link its skill,
|
|
16
|
+
CLI, SDK, and [MCP](https://docs.opensea.io/reference/mcp). Use an existing connection when suitable;
|
|
17
|
+
adding all surfaces supplies no extra capability by itself.
|
|
18
|
+
- **Data:** **off-chain** discovery, indexed traits, and marketplace API/MCP results. NFT ownership
|
|
19
|
+
and settlement are **on-chain**, but consuming an indexed response does not give a Solidity hook
|
|
20
|
+
a contract read. For that route use the NFT/protocol's official contract interfaces directly.
|
|
21
|
+
- **Footprint:** MCP data tools and REST need an API key; MCP handshake/tool discovery does not.
|
|
22
|
+
[Instant keys](https://docs.opensea.io/reference/api-keys) need no signup but expire; a full key
|
|
23
|
+
involves the developer account flow. The same key serves MCP and REST. Wallet-scoped tools need
|
|
24
|
+
additional wallet authentication. Check current limits and renewal rather than creating keys to
|
|
25
|
+
evade quotas.
|
|
26
|
+
- **Before integrating:** verify the [current chains](https://docs.opensea.io/reference/get_chains)
|
|
27
|
+
and exact feature. Keep keys server-side. Use ABX metadata commands for canonical state; use
|
|
28
|
+
OpenSea tools for its projection/orders. Its SeaDrop deployment tools are not an ABX deploy lane.
|
|
29
|
+
|
|
30
|
+
## Uniswap — swaps, liquidity, and pool-informed art
|
|
31
|
+
|
|
32
|
+
- **Ideas:** use a selected pool's same-chain state as a visual input computed in the EVM, with
|
|
33
|
+
bounded reads and fallback art. Offer swap links in a companion sales app; the NFT's essential
|
|
34
|
+
rendering should not require a trading API, embedded swap app, or active liquidity position.
|
|
35
|
+
- **Official route:** start with the relevant [Uniswap skill](https://developers.uniswap.org/docs/uniswap-ai/skills)
|
|
36
|
+
and [integration choices](https://developers.uniswap.org/docs/get-started/quickstart). Reuse its
|
|
37
|
+
routing, SDKs, and interfaces rather than implementing a swap router.
|
|
38
|
+
- **Data:** **on-chain** pool state can live-augment an ABX renderer or inform hook logic on the
|
|
39
|
+
same chain. Use the version's official read interfaces (including
|
|
40
|
+
[v4 StateView](https://github.com/Uniswap/v4-periphery/blob/main/src/lens/StateView.sol) where appropriate).
|
|
41
|
+
**Off-chain** quotes and indexed volume/history suit discovery or a companion app. Do not use
|
|
42
|
+
them as default live-view inputs; consider an actual bounded on-chain snapshot if relevant.
|
|
43
|
+
A pool's instantaneous price is not a manipulation-resistant price oracle.
|
|
44
|
+
- **Footprint:** [interface links](https://developers.uniswap.org/docs/trading/custom-interface-links)
|
|
45
|
+
avoid provisioning a developer API key; execution still needs the collector's wallet. The Trading
|
|
46
|
+
API needs a developer key. Browser/build-time contract/SDK reads need RPC access; EVM-to-EVM
|
|
47
|
+
reads do not add an application RPC service. The [iframe embed](https://developers.uniswap.org/docs/trading/embed-app)
|
|
48
|
+
requires origin allowlisting; reserve it for companion apps, with their own availability expectations.
|
|
49
|
+
- **Before integrating:** select protocol version, chain, pool, and token addresses from the
|
|
50
|
+
[deployment sources](https://developers.uniswap.org/deployments). Check the exact tool's chain
|
|
51
|
+
support separately. Read-only pool data, swap execution, liquidity positions, and Uniswap v4 hooks
|
|
52
|
+
are distinct integrations; a Uniswap hook is not an ABX parameter hook.
|
|
53
|
+
|
|
54
|
+
## Art Blocks — existing projects and collector communities
|
|
55
|
+
|
|
56
|
+
- **Ideas:** discover related artists/projects or design a same-chain collector interaction using
|
|
57
|
+
verified contract state. Link to another work from a companion gallery; do not recommend a hosted
|
|
58
|
+
generator/media iframe as part of a permanent NFT's essential output. Discovery grants no reuse rights.
|
|
59
|
+
- **Official route:** use the [Art Blocks skills](https://docs.artblocks.io/developer/mcp-server/skills/)
|
|
60
|
+
and [MCP](https://docs.artblocks.io/developer/mcp-server/quick-start/) for project/token discovery
|
|
61
|
+
and query workflows. [Token, generator, and media APIs](https://docs.artblocks.io/developer/token-and-generator-apis/)
|
|
62
|
+
provide published read paths for research or optional companion displays.
|
|
63
|
+
- **Data:** **mixed**. Ownership and some token/script state are **on-chain**, varying by core;
|
|
64
|
+
inspect the [official core interfaces](https://docs.artblocks.io/developer/core-contract/).
|
|
65
|
+
API/MCP discovery, generated media, and computed traits are **off-chain** access paths. A published
|
|
66
|
+
live-view URL is an external service dependency, not preserved artwork or an EVM-readable input.
|
|
67
|
+
- **Footprint:** MCP uses OAuth/browser sign-in; do not assume an ABX Services login authorizes it.
|
|
68
|
+
Published token/view URLs can suit a companion display without adding an MCP connection. Verify
|
|
69
|
+
authentication and rate policy for the exact query/API route; do not promise unlimited access.
|
|
70
|
+
- **Before integrating:** carry chain, core address, project, and token identity. On a shared Art
|
|
71
|
+
Blocks core, collection-wide `balanceOf` is not a project-specific ownership check. Use the
|
|
72
|
+
official Art Blocks tooling for its contracts; ABX parameter/minter commands target ABX projects.
|
|
73
|
+
A holder gate on a different chain needs a separate proof design.
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
# ERC-20s and token creation
|
|
2
|
+
|
|
3
|
+
Use for token-informed ABX ideas, an existing token community, or a companion fungible token.
|
|
4
|
+
Official sources reviewed 2026-10-30. Recheck the selected chain, token identity, and tool/version.
|
|
5
|
+
These are discovery routes, not executed ABX integrations. Read only the relevant section.
|
|
6
|
+
|
|
7
|
+
## Existing tokens as creative inputs
|
|
8
|
+
|
|
9
|
+
The [ERC-20 standard](https://eips.ethereum.org/EIPS/eip-20) exposes **on-chain** balances, supply,
|
|
10
|
+
and allowances. Prefer a same-chain ABX augment hook or renderer turning a chosen wallet's balance
|
|
11
|
+
into visual variation, with bounded reads and self-contained fallback art. Use external-state
|
|
12
|
+
configure/transfer gates only for an intentional mechanic with lifecycle tests and failure semantics.
|
|
13
|
+
Specify whose balance matters: current NFT owner, configuring wallet, or a fixed community treasury.
|
|
14
|
+
For extension choices use [capabilities.md](../capabilities.md) and [code.md](../code.md).
|
|
15
|
+
|
|
16
|
+
| Token / chain scope | Official identity and tooling | Example on-chain input / boundary |
|
|
17
|
+
|---|---|---|
|
|
18
|
+
| USDC — Ethereum, Base, Arbitrum One; check each testnet separately | [Circle's contract directory](https://developers.circle.com/stablecoins/usdc-contract-addresses), then the token's verified ERC-20 interface | Treasury balance informs an artwork's density. Distinguish native USDC from bridged variants; reserve reports and redemption access are separate issuer/off-chain concerns. |
|
|
19
|
+
| ARB — Arbitrum One; verify other deployments separately | [Arbitrum Foundation deployment directory](https://docs.arbitrum.foundation/deployment-addresses), then the verified token interface | A holder's balance selects a palette. ERC-20 balance alone does not establish delegated voting power or governance participation. |
|
|
20
|
+
| AERO — Base | [Aerodrome's official contracts and ABIs](https://github.com/aerodrome-finance/contracts) | Treasury or owner balance drives visual variation. AERO and veAERO positions are different assets/interfaces; do not infer locked voting power from an ERC-20 balance. |
|
|
21
|
+
|
|
22
|
+
Use official deployment directories and interfaces rather than symbols, token search rankings, or
|
|
23
|
+
copied addresses. Direct reads need RPC for a browser/build tool; same-chain contract-to-contract
|
|
24
|
+
reads need no API account. An **off-chain** token search, price feed, portfolio API, or holder index
|
|
25
|
+
is a different route, even when its source is contract state. Keep it in discovery or a companion
|
|
26
|
+
app by default. Do not fetch a token's hosted logo/price/portfolio API from a permanent NFT's live
|
|
27
|
+
view; prefer verified numeric contract reads or actual captured on-chain bytes. An essential service
|
|
28
|
+
requires the explicit lifetime commitment and recovery design in [durability.md](durability.md).
|
|
29
|
+
|
|
30
|
+
`name`, `symbol`, and `decimals` are optional in ERC-20. Normalize units from the actual token and
|
|
31
|
+
avoid unbounded holder enumeration. A current balance is temporary, not proof of sustained ownership;
|
|
32
|
+
pool prices, valuations, and eligibility rules need their own trust/manipulation assessment.
|
|
33
|
+
Inspect token upgrade/admin/pause powers; an on-chain token is not necessarily immutable. Rendering
|
|
34
|
+
fallbacks should keep the NFT usable if reads fail. A gate's fallback must preserve its intended rule.
|
|
35
|
+
|
|
36
|
+
## Companion token creation — Clanker as one starting reference
|
|
37
|
+
|
|
38
|
+
ABX creates its NFT collections; fungible token launch and management belong to a separate protocol.
|
|
39
|
+
[Clanker's official SDK](https://github.com/clanker-devco/clanker-sdk) and
|
|
40
|
+
[official agent skill](https://github.com/clanker-devco/clanker-sdk/blob/main/.cursor/skills/use-clanker-sdk/SKILL.md)
|
|
41
|
+
provide one reusable route for creation, liquidity, and post-launch operations. Prefer these over
|
|
42
|
+
building a token launcher, pool deployer, or reward client. This is a starting option, not a required
|
|
43
|
+
provider: a creator/agent may choose another protocol using the same verification criteria.
|
|
44
|
+
|
|
45
|
+
- **Coverage:** the official skill lists Ethereum, Base, Arbitrum One, and Base Sepolia among its
|
|
46
|
+
networks. Verify the installed SDK version and actual protocol deployments for the chosen chain;
|
|
47
|
+
this does not establish availability on every ABX chain or paired testnet.
|
|
48
|
+
- **Data and ideas:** the resulting ERC-20 and pool state are **on-chain** inputs for same-chain
|
|
49
|
+
ABX art or intentional eligibility. Hosted discovery/media are **off-chain**; keep the NFT's
|
|
50
|
+
output independent of the launch website, SDK, and token image host. A companion token balance can
|
|
51
|
+
affect art without giving the NFT permission to trade or claim rewards.
|
|
52
|
+
- **Setup:** the direct SDK flow uses RPC and a wallet client, with gas/funding and transaction
|
|
53
|
+
authority. It does not document a separate Clanker account/API key for that route. Hosted APIs,
|
|
54
|
+
social login, and optional services have separate requirements; consult the
|
|
55
|
+
[current official docs](https://docs.clanker.world). Reuse existing suitable connections and signer;
|
|
56
|
+
never export an ABX-managed key to satisfy a third-party example.
|
|
57
|
+
- **Before launch:** verify admin/recipient roles, allocations, liquidity/fees, costs, and required
|
|
58
|
+
metadata or distribution hosting. Use the chosen official tool's simulation/preview and explicit
|
|
59
|
+
transaction review. No companion-token deployment, approval, or funding is implied by ideation.
|
|
60
|
+
|
|
61
|
+
For a proposal, record the token's chain and official identity, input field and provenance, ABX seam,
|
|
62
|
+
live versus captured behavior, resilience, new accounts/credentials, and runtime dependencies. Keep
|
|
63
|
+
token launch and ABX NFT deployment as separately reviewed operations, using each protocol's official tools.
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
# Ecosystem discovery and integration planning
|
|
2
|
+
|
|
3
|
+
Use this reference when a creator wants ideas involving existing protocols, communities, or tools.
|
|
4
|
+
For public context, see [Ecosystem integrations](https://docs.abx.io/docs/using-abx/guides/ecosystem-integrations).
|
|
5
|
+
These are discovery routes, not tested ABX adapters or a promise of third-party compatibility.
|
|
6
|
+
|
|
7
|
+
## Load by chain set and intent
|
|
8
|
+
|
|
9
|
+
Read the selected chain's context, then only the topic/provider relevant to the idea. Shared
|
|
10
|
+
providers are described once; chain notes add local context rather than copying their instructions.
|
|
11
|
+
|
|
12
|
+
| Requested network | References |
|
|
13
|
+
|---|---|
|
|
14
|
+
| Ethereum (`1`) | [Ethereum context](ecosystem/chains/ethereum.md) |
|
|
15
|
+
| Sepolia (`11155111`) | [Sepolia context](ecosystem/chains/sepolia.md) |
|
|
16
|
+
| Base (`8453`) | [Base context](ecosystem/chains/base.md) |
|
|
17
|
+
| Base Sepolia (`84532`) | [Base Sepolia context](ecosystem/chains/base-sepolia.md) |
|
|
18
|
+
| Arbitrum One (`42161`) | [Arbitrum context](ecosystem/chains/arbitrum.md) |
|
|
19
|
+
| Arbitrum Sepolia (`421614`) | [Arbitrum Sepolia context](ecosystem/chains/arbitrum-sepolia.md) |
|
|
20
|
+
| Robinhood Chain (`4663`) | [Robinhood context](ecosystem/chains/robinhood.md) |
|
|
21
|
+
| Robinhood Chain Testnet (`46630`) | [Robinhood testnet context](ecosystem/chains/robinhood-testnet.md) |
|
|
22
|
+
|
|
23
|
+
Topic routes: [multichain integrations](ecosystem/multichain.md) cover marketplaces, liquidity, and
|
|
24
|
+
existing generative art; [ERC-20s and token creation](ecosystem/tokens.md) cover specific tokens and
|
|
25
|
+
an external launch protocol. These examples are non-exhaustive starting points, not an allowlist or
|
|
26
|
+
provider ranking. Explore protocols beyond this catalog that fit the creator's theme, community, or
|
|
27
|
+
distinctive mechanics. Evaluate their actual on-chain data, semantics, reliability, official tools,
|
|
28
|
+
and setup/runtime costs; explain why each input belongs in this particular project. An unlisted
|
|
29
|
+
provider is unresearched here, not unsupported. Verify new candidates against official sources and
|
|
30
|
+
the same durability criteria. Read `abx capabilities --json` for current ABX network eligibility;
|
|
31
|
+
third-party coverage does not enable an ABX network or sponsorship lane.
|
|
32
|
+
|
|
33
|
+
## Turn an idea into a bounded plan
|
|
34
|
+
|
|
35
|
+
1. Apply the [durability guidance](ecosystem/durability.md) to the object's intended behavior and
|
|
36
|
+
lifespan. Keep discovery/build tools separate from the finished NFT's dependencies.
|
|
37
|
+
Start from the project's theme, audience, and distinctive mechanic. Explain how each proposed
|
|
38
|
+
input supports that concept; do not force a familiar token, provider, or financial theme into an
|
|
39
|
+
unrelated work. Keep ideation separate from account creation or transaction execution.
|
|
40
|
+
2. Check available connections and project dependencies through their supported discovery/status
|
|
41
|
+
surfaces. Reuse suitable existing tooling and accounts. Do not inspect credential files to make
|
|
42
|
+
this inventory.
|
|
43
|
+
3. Prefer the provider's official skill, MCP, CLI, SDK, API, or contract interfaces for its part of the
|
|
44
|
+
workflow. Link to current installation/authentication instructions instead of copying them here.
|
|
45
|
+
Add only the project-specific glue; do not rebuild an existing client, router, indexer, or signer.
|
|
46
|
+
4. Before implementation, check the ABX part using [capabilities.md](capabilities.md). An external
|
|
47
|
+
API read or marketplace order is not an ABX command. Keep ABX operations in its CLI and provider
|
|
48
|
+
operations in official tools; do not let a third-party deploy flow replace the chosen ABX collection.
|
|
49
|
+
5. Before implementation, verify the specific chain, contract/version, token or project identity,
|
|
50
|
+
current tool support, and the read/write authority. Testnet availability, liquidity, and datasets
|
|
51
|
+
need separate evidence. A documentation review is not an executed integration test.
|
|
52
|
+
|
|
53
|
+
## Input provenance and ABX execution
|
|
54
|
+
|
|
55
|
+
Label each proposed input **on-chain**, **off-chain**, or **mixed**, including the actual access path.
|
|
56
|
+
|
|
57
|
+
| Input route | Where it can drive ABX behavior |
|
|
58
|
+
|---|---|
|
|
59
|
+
| On-chain, same-chain contract read | Can inform contract actions, state rules, eligibility, or renderer/augment output. Configure/transfer hooks need deliberate failure semantics and lifecycle tests; a display input should not block transfers |
|
|
60
|
+
| Off-chain API/indexer, even if sourced from contracts | Discovery/build tooling or an optional companion app. Prefer capturing the actual bounded input on-chain over putting HTTP calls in the NFT's live view |
|
|
61
|
+
| Mixed: on-chain state plus hosted metadata/media | Separate the durable NFT output from hosted enrichment. Any essential service is a lifetime dependency requiring explicit creator choice and the recovery design below |
|
|
62
|
+
|
|
63
|
+
Specify the contract and field, or API and timestamp, plus whether the input is live or captured.
|
|
64
|
+
For contract integrations use official interfaces, bounded reads, and purpose-appropriate failure handling.
|
|
65
|
+
Do not assume a renderer's `msg.sender` is the NFT owner. A mutable external read can affect hook
|
|
66
|
+
liveness as well as output; inspect upgrade/pause powers. A browser's hardcoded RPC fetch is still a
|
|
67
|
+
network dependency; prefer computing the input in the EVM. A pool spot value alone is not a
|
|
68
|
+
manipulation-resistant price oracle.
|
|
69
|
+
|
|
70
|
+
## Account and dependency footprint
|
|
71
|
+
|
|
72
|
+
For each proposed route, include a short row in the creator's plan:
|
|
73
|
+
|
|
74
|
+
| Route | Setup delta | Authority and cost | Runtime dependency / exit |
|
|
75
|
+
|---|---|---|---|
|
|
76
|
+
| Provider + official tool + exact chain | Reuse existing connection, no signup, new account, API key, OAuth, RPC, or unknown | Reads versus signatures/approvals; fees, limits, expiry, and renewal to verify | Build-time, optional companion, or lifetime NFT dependency; responsible owner, replacement controls, and behavior if it disappears |
|
|
77
|
+
|
|
78
|
+
Count accounts, credentials, and hosted dependencies separately. A signup-free key still needs
|
|
79
|
+
storage and renewal; an account-free HTTP endpoint is still an availability dependency. Distinguish
|
|
80
|
+
creator setup from what every collector must do. Prefer the least setup that meets the actual goal,
|
|
81
|
+
not an account-free route that recreates the provider's service or hides extra maintenance.
|
|
82
|
+
|
|
83
|
+
Use public docs, interfaces, or a local fixture for early comparison. Introduce a new connection,
|
|
84
|
+
credential, paid plan, or wallet permission only when the chosen workflow needs it and the creator's
|
|
85
|
+
authorization covers it. Record credential references and expiry, never secret values, in handoffs.
|
|
86
|
+
|
|
87
|
+
## Integration boundaries to resolve
|
|
88
|
+
|
|
89
|
+
- **Live or captured:** do not recommend HTTP-dependent NFT live views by default. Prefer EVM reads
|
|
90
|
+
or actual input bytes captured on-chain; a URL/hash alone does not preserve them. Required external
|
|
91
|
+
APIs need explicit lifetime-dependency disclosure and owner-controlled replacement plus a tested
|
|
92
|
+
fallback, as described in [durability.md](ecosystem/durability.md). Read [code.md](code.md) for lanes.
|
|
93
|
+
- **Source chain:** a contract cannot directly read another chain's NFT ownership. Multichain
|
|
94
|
+
APIs can assist discovery but do not supply a trustless cross-chain proof or shared state.
|
|
95
|
+
- **Compatibility:** marketplace indexing, royalties, signed listings, transfer validators, and
|
|
96
|
+
lending eligibility are separate checks. Read [creator-token.md](creator-token.md) when relevant.
|
|
97
|
+
- **Writes:** a quote, unsigned transaction, or tool connection is not approval to trade, approve a
|
|
98
|
+
spender, lend, bridge, or deploy. Keep the existing ABX confirmation and reconciliation rules.
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Project ideation
|
|
2
|
+
|
|
3
|
+
Start with what the object means and does, who participates, and why they would care. Explore its
|
|
4
|
+
data, changing state, participant roles, rules, and relationships with other systems before choosing
|
|
5
|
+
its appearance or deployment family. Artwork is one possibility; follow the creator's intent.
|
|
6
|
+
|
|
7
|
+
For example, consider a shared resource with contribution rules, a record of provenance or claims,
|
|
8
|
+
a liquidity position with community-defined interactions, or a charter connected to an externally
|
|
9
|
+
launched ERC-20. An object can represent rights or a financial instrument, but real-world rights,
|
|
10
|
+
custody, and enforcement need their own design. These are starting points, not a checklist or
|
|
11
|
+
promises of ready-made ABX features. Explore beyond them and beyond the documented protocols.
|
|
12
|
+
|
|
13
|
+
Think in actions as well as data: a governed parameter edit or token transfer can trigger custom
|
|
14
|
+
on-chain logic to swap through an AMM, create another asset, or settle an obligation. Configure and
|
|
15
|
+
transfer hooks can make contract calls using explicitly arranged funding and authority; augment
|
|
16
|
+
hooks only derive data during reads. These actions need not serve a visual outcome.
|
|
17
|
+
|
|
18
|
+
Discuss the core interaction and value in plain language. Consider what changes, who may change it,
|
|
19
|
+
and what happens when a participant or dependency disappears. On-chain, off-chain, and hybrid
|
|
20
|
+
designs are all possible; choose deliberately for the intended lifespan, trust, and behavior.
|
|
21
|
+
Durability need not mean frozen state. Use [ecosystem.md](ecosystem.md) for relevant integrations,
|
|
22
|
+
favoring official third-party tools rather than rebuilding them.
|
|
23
|
+
|
|
24
|
+
Keep exploration separate from implementation. Research and compare concepts until the creator
|
|
25
|
+
chooses a direction and asks to implement it; do not start code, create repositories or cloud
|
|
26
|
+
resources, or deploy during ideation. Future launch intent or available accounts and wallets do
|
|
27
|
+
not select an idea. An explicit request to implement a chosen concept already establishes that
|
|
28
|
+
direction; do not ask for it again. Resolve technical feasibility through
|
|
29
|
+
[capabilities.md](capabilities.md) before making implementation promises.
|
package/skill/reference/setup.md
CHANGED
|
@@ -34,7 +34,9 @@ The shipped skill is named `abx`. `abx skill install` installs it to `.claude/sk
|
|
|
34
34
|
the rename transition the installer moves a recognized `abx-self-host` folder to
|
|
35
35
|
`.abx-skill-backups/` before installing the new name. It preserves custom bytes rather than deleting
|
|
36
36
|
them. For a custom skills parent, run `abx skill install --target <that-parent>`; do not move or merge
|
|
37
|
-
the old folder manually. Restart the agent after installation.
|
|
37
|
+
the old folder manually. Restart the agent after installation. If this is a one-shot session that
|
|
38
|
+
cannot restart, run `abx skill path`, open the printed `SKILL.md` directly, and follow it for the
|
|
39
|
+
current run; the installed copy becomes automatic in the next session.
|
|
38
40
|
|
|
39
41
|
ABX requires Node 22.13 or newer. Prefer a project-local npm dependency for reproducible automation;
|
|
40
42
|
use a global install for interactive machine-wide use. Avoid repeated `npx` execution when version
|