@dfm-fi/agent 0.2.823 → 0.2.837

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.
Files changed (3) hide show
  1. package/dist/cli.js +1 -1
  2. package/package.json +1 -1
  3. package/skills.md +16 -14
package/dist/cli.js CHANGED
@@ -54,7 +54,7 @@ function printHelp() {
54
54
  }
55
55
  async function startMcpServer() {
56
56
  // Lazy import so `install`/`help` never pay the cost of building the full
57
- // server (loadConfig, 13 tool registrations) and so importing this module
57
+ // server (loadConfig, 14 tool registrations) and so importing this module
58
58
  // never auto-starts the server (mcp-server only auto-starts as an entrypoint).
59
59
  const m = await import('./mcp-server.js');
60
60
  await m.startServer();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dfm-fi/agent",
3
- "version": "0.2.823",
3
+ "version": "0.2.837",
4
4
  "description": "DFM v2 MCP server — drive the full DTF launch → deposit → redeem (+ manage) lifecycle from an AI agent against the live API.",
5
5
  "type": "module",
6
6
  "bin": {
package/skills.md CHANGED
@@ -100,8 +100,10 @@ extend expiry. Returns the exact old→new loosening applied.
100
100
 
101
101
  ### update_vault_assets (write — GATED) — MANAGER
102
102
  FULL-REPLACE a vault's basket with new target weights. Only works on a vault YOU
103
- admin. prepare → sign → submit → confirm. The vault must be in MANUAL rebalance
104
- mode and outside the 24h config timelock (clear 4xx otherwise).
103
+ admin. prepare → sign → submit → confirm. Every vault is MANUAL (auto-rebalance
104
+ was removed, #35). The config timelock is flag-gated OFF in v1
105
+ (`ENFORCE_DEPOSITOR_GUARDS=false`) — a vault is editable ~10s after create, not
106
+ 24h (clear 4xx only if a future deploy re-enables the guard).
105
107
  - Input: `vault` (base58), `assets` (1–15, each `{mint,symbol,allocationBps}`;
106
108
  allocationBps sum to exactly 10000, no duplicate mints).
107
109
  - REMOVING an asset the vault still HOLDS: this tool is order-aware and drains a
@@ -125,18 +127,18 @@ needed for an older vault, one created with rebalancing skipped, or a basket too
125
127
  large to bundle the init at create. Reverts on-chain if already initialized.
126
128
  - Input: `vault` (base58). Returns the init signature + the `rebalancerConfig` PDA.
127
129
 
128
- ### rebalance (write — GATED) — MANAGER
129
- Execute a rebalance SWAP on a vault the test wallet ADMINS (rebalancer must be
130
- initialized — bundled into `launch_vault`, or run `init_rebalancer` first). An
131
- EXPLICIT trade: sell `amountIn` RAW base units of `inputMint` → `outputMint`, BOTH
132
- already basket assets. One-signature creator-rebalance (approve execute revoke).
133
- On-chain guards are ORACLE-FREE: a measured `min_out` floor + hardcoded velocity
134
- ceilings (50%/tx, 60s spacing, 48/day) + an output-mint allowlist, so a
135
- value-leaking route reverts. The API's prepare step still requires fresh
136
- sponsored Pyth price feeds for both legs (an off-chain quality gate)on a 503
137
- "momentarily stale", retry in a few seconds.
138
- - Input: `vault`, `inputMint`, `outputMint` (base58), `amountIn` (raw base-unit
139
- string), optional `slippageBps` (1–300). Returns the rebalance signature.
130
+ ### rebalance_to_targets (write — GATED) — MANAGER
131
+ Converge a vault the test wallet ADMINS toward its CURRENT config target weights
132
+ (rebalancer must be initialized — bundled into `launch_vault`, or run
133
+ `init_rebalancer`). The free-form swap tool (`inputMint`/`outputMint`/`amountIn`)
134
+ was REMOVED (#57): a rebalance ONLY converges holdings to the declared targets —
135
+ the config is the source of truth. One-signature creator-rebalance (approve
136
+ execute revoke). On-chain guards are ORACLE-FREE: a measured `min_out` floor +
137
+ hardcoded velocity ceilings (50%/tx, **5s** spacing, 48/day) + an output-mint
138
+ allowlist. **No Pyth feed / price-posting gate**the oracle-free redesign
139
+ removed it; deviations are computed off-chain (Pyth→Switchboard→Jupiter cascade)
140
+ purely to size the converging legs.
141
+ - Input: `vault` (base58), optional `slippageBps` (1–300). Returns the signature(s).
140
142
 
141
143
  ## Key concepts
142
144