Build or edit a Senpi trading strategy — interactively, ONE decision at a time. Use for "build a strategy", "create a strategy from scratch", "design a strategy", "I have a trading idea", or ANY strategy that needs DSL (a runtime-supervised exit: stop-loss, trailing stop, profit-lock ladder) — a runtime.yaml authored here is the ONLY way to carry a DSL; raw MCP strategy_create* / create_position calls cannot, and must never stand up a named or protected strategy. Offers the closest TEMPLATE first (via senpi-strategy-discover), then fork-or-scratch as the user chooses. NOT for installing (senpi-strategy-ops) or picking one to run (senpi-strategy-discover).
Deploy / monitor / close a NAMED Senpi trading strategy. Use when the user names a strategy to run — "install spider", "deploy polar", "set up kodiak", "run the spider strategy", "is my strategy live?", "what am I running", "list my strategies" (→ status.py), "are my positions protected? / do they have a stop-loss (DSL)?", "stop/close/uninstall polar" — and for teardown like "close all strategies", "return funds to main", "tear everything down" (→ close.py --all). ALWAYS tear down via close.py, never a raw strategy_close (that strands the runtime). A strategy is a PACKAGE (strategy.yaml + one runtime.yaml per instance + scanners/) the runtime supervises in-process — no scanner daemon. deploy.py runs three resumable steps (create→runtime→verify); close.py tears down (stop runtime + strategy_close → flattens positions, returns funds). The id (spider, polar, kodiak) is the package folder. NOT for choosing WHICH strategy (senpi-strategy-discover) or building/editing one (senpi-strategy-author).
Retrospective trade review + improvement coaching for the user's Senpi trading. Answers "did I sell too early or late", "what did I miss this week", "master my week", "compare my trades to the market / to the best whales", "how could I make more gains", "suggest improvements", "review my trades", "am I getting shaken out too early / how are my exits firing", "what did my own limits block / what couldn't I take", "where am I leaking", "walk me through / explain my [asset] trade", "what am I paying in fees / maker vs taker", "why is [strategy] losing". A hidden engine (scripts/review.py) reconstructs every CLOSED trade from discovery, enriches each exit reason + blocked signals from the runtime telemetry event log, computes the honest "if I'd held to now" counterfactual, and crosses the book against what the market did — you narrate it under strict guardrails: process over outcome (lead with the aggregate, not the one reversal), it's the STRATEGY not the user, NO fabricated "+$X/week", no performance-chasing, h
Help a user choose a Senpi trading strategy to deploy — a conversational, analyst-style picker. Use when the user asks "what should I trade?", "recommend a strategy", "help me pick a strategy", "what's winning?", "set me up", "I have a view on the world (a war, the economy, one coin winning) — trade it", "run a hedge fund / all-weather / tail-risk book", or wants a strategy but has NOT named a specific one. Surface the closest matching TEMPLATE first — the fastest on-ramp, which the user can then fork/customize — passing their worldview as `--theme` to rank the closest fits. You talk and RANK; a hidden engine (scripts/discover.py) fetches data + filters. NOT for installing a NAMED strategy (that's senpi-strategy-ops), or building/designing one from scratch or with a custom DSL (that's senpi-strategy-author).
How a Senpi trading strategy interacts with the runtime engine (@senpi-ai/runtime) on Hyperliquid: a strategy runs from a runtime.yaml pointing at a Python module that exports scan(inputs, ctx), which the runtime supervises and calls each interval, then owns execution, risk guard_rails, and two-phase DSL trailing-stop exits. Use when working with runtime.yaml, the scan(inputs, ctx) contract, external_scanner, ctx, or the DSL exit engine — including verifying open positions are protected by DSL (have a working stop-loss). The shared runtime contract the lifecycle skills reference. NOT for building, installing, or picking a strategy (→ senpi-strategy-author / senpi-strategy-ops / senpi-strategy-discover).
Analyze the user's portfolio, strategies, positions, and trades across all wallets — main embedded wallet, strategy sub-wallets, deployed vs idle — with real-time balances and real analysis, not a flat dump. Leads at the STRATEGY level: each strategy judged against its OWN mandate (is it doing its job?), with positions as evidence. Use this skill FIRST for ANY portfolio / strategies / positions / balances / PnL / trade-history question, BEFORE any raw strategy_get_clearinghouse_state / account_get_portfolio / strategy_list MCP call. Use for "analyze my strategies", "how are my strategies doing", "analyze my portfolio", "how am I doing", "show my positions", "balance across all wallets", "how much is idle", and "are my open positions protected? / do they have a stop-loss?", and "tell me about my strategies and their DSL / what tier are my positions in?", and "what happened to my closed [asset] position / did my trade actually go through / do I still hold X" — the authority for position facts, OPEN and CLOSED,
Show the user's standing across Senpi programs — points and rank, loyalty tier and fees, Agents Arena position, and referral earnings. Use for "how many points do I have?", "what's my rank/tier?", "what are my fees?", "how am I doing in the Arena?", "my referral rewards". Use this instead of calling user_get_senpi_points + get_loyalty_tiers + arena_* one by one. A hidden engine (scripts/status.py) pulls it all in one call. Requires a USER-scoped Senpi token.
Handle ANY money-movement request — deposit, add funds, fund my account, withdraw, cash out, send, "send to my wallet / an exchange / a friend", transfer, "move my money", pay someone, bridge, get my private key. Two hard rails: money ENTERS Senpi only through the user's embedded wallet (one EVM address, all supported chains + Hyperliquid — NEVER a strategy wallet), and money LEAVES Senpi to any EXTERNAL address only through the Senpi web/mobile app (Balances/Wallet) — no agent tool can send funds outside Senpi, by design, for the user's security. On-platform moves between the user's OWN wallets (strategy → embedded, Hyperliquid → embedded on EVM, spot → perps, close a strategy to reclaim funds) DO use tools. Use this skill for every deposit / withdraw / transfer / send question. Pure guidance, no engine.