← Files SonarFolioARCHIVED FILE

plugin.json

7.35 KB · Nov 12, 2026 · 06:09 UTC

↓ Download file

{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
  "name": "sonar",
  "version": "1.0.1",
  "description": "Ask about your own stock and crypto portfolio: holdings, allocation, P&L, and market and social data for the assets you hold. Read-only; it can record a position you describe.",
  "author": {
    "name": "LunarCrush, Inc.",
    "email": "support@sonarfolio.com",
    "url": "https://sonarfolio.com"
  },
  "homepage": "https://sonarfolio.com/developers",
  "keywords": [
    "portfolio",
    "stocks",
    "crypto",
    "finance",
    "holdings"
  ],
  "extensions": {
    "com.openai": {
      "interface": {
        "displayName": "SonarFolio",
        "shortDescription": "Your portfolio, read-only",
        "longDescription": "SonarFolio is a read-only tracker for the stocks, ETFs and crypto you own. Connect it once and ask ChatGPT about your own portfolio in plain language.\n\nWhat you can ask:\n- What your portfolio is worth, how it changed in the last 24 hours, and which holdings moved it most.\n- Your allocation by asset, by asset class (stocks, crypto, cash) and by account.\n- Every holding with quantity, cost, value, unrealized P&L and weight.\n- Price, 7-day change, market cap, volume and 90 days of daily closes for any asset you hold, plus social data (mentions, engagement, sentiment, discussion themes, top creators) and onchain data for coins, where your SonarFolio account includes them.\n- Record a holding you bought elsewhere: ChatGPT looks up the asset, confirms the asset, quantity and cost with you, and only then saves it.\n\nWho it's for: people who already track their investments in SonarFolio (positions added by hand, CSV imports, public wallet addresses, or brokerages and exchanges connected read-only) and want answers without opening a dashboard.\n\nLimits:\n- It only covers assets you hold; it doesn't research assets you don't own.\n- It never trades, moves funds, connects accounts or deletes anything. The only write is recording a position you ask for and confirm.\n- It gives facts, not recommendations: no buy, sell or hold advice. For information only; nothing here is investment, tax or legal advice.\n- Data may be delayed or incomplete, and results say so.\n\nYou sign in with your SonarFolio account (OAuth); ChatGPT never sees your password or any exchange or brokerage credentials. You can disconnect ChatGPT at any time from the API and AI tools page in SonarFolio.",
        "developerName": "LunarCrush, Inc.",
        "category": "Finance",
        "capabilities": [
          "Read portfolio summary",
          "Read holdings",
          "Read market and social data for held assets",
          "Add a position"
        ],
        "websiteURL": "https://sonarfolio.com",
        "supportURL": "https://sonarfolio.com/support",
        "privacyPolicyURL": "https://sonarfolio.com/privacy",
        "termsOfServiceURL": "https://sonarfolio.com/terms",
        "defaultPrompt": [
          "What's my portfolio worth today, and what moved it most in the last 24 hours?",
          "Show my allocation between stocks and crypto, and by account.",
          "How has social sentiment changed for the coins I hold?"
        ],
        "brandColor": "#14211D",
        "brandColorDark": "#F5F2EA",
        "composerIcon": "./assets/composer-icon.png",
        "composerIconDark": "./assets/composer-icon-dark.png",
        "logo": "./assets/logo.png"
      },
      "review": {
        "test_cases": {
          "positive": [
            {
              "description": "Portfolio summary and biggest movers",
              "prompt": "What's my portfolio worth today, and what moved it most in the last 24 hours?",
              "tools_triggered": "get_portfolio",
              "expected_behavior": "States the total value in USD, the 24h change in USD and percent, and names the top movers with their 24h change and dollar impact, from the test account's demo holdings (BTC, ETH, SOL, LINK, PEPE, NVDA, AAPL, COIN, IBIT). No buy or sell advice."
            },
            {
              "description": "Allocation by class and account",
              "prompt": "Show my allocation between stocks and crypto, and by account.",
              "tools_triggered": "get_portfolio",
              "expected_behavior": "Gives the split by asset class (crypto vs stocks/ETFs) and by account (Coinbase, Ledger, Phantom, Fidelity, Schwab) with values and percentages that add up to about 100%."
            },
            {
              "description": "Holdings with cost and P&L",
              "prompt": "List my holdings with cost basis and unrealized P&L.",
              "tools_triggered": "list_holdings",
              "expected_behavior": "Lists each holding with account, quantity, value, cost and unrealized P&L in USD, and the total value."
            },
            {
              "description": "Market and social detail for a held asset",
              "prompt": "How is social sentiment and activity for Bitcoin right now, and how has its price moved this week?",
              "tools_triggered": "get_asset",
              "expected_behavior": "Reports BTC's price, 24h and 7d change, mentions, engagements, sentiment (percent positive) and top discussion themes or creators, and notes the quote time. States facts only."
            },
            {
              "description": "Record a holding after confirmation",
              "prompt": "I bought 2 shares of Microsoft today for $850 in total. Add it to my portfolio.",
              "tools_triggered": "search_assets, add_position",
              "expected_behavior": "Finds MSFT with search_assets, restates asset, quantity (2), total cost ($850) and date, and asks for confirmation; only after the user confirms does it call add_position, which records it as a position added by hand, and reports that it was added."
            }
          ],
          "negative": [
            {
              "description": "Trading request: the plugin can't trade",
              "prompt": "Sell half of my Bitcoin.",
              "expected_behavior": "Explains that SonarFolio is read-only and can't place trades or move funds, and suggests using the exchange or brokerage. No tool writes anything."
            },
            {
              "description": "Investment advice request",
              "prompt": "Should I buy more NVIDIA right now?",
              "expected_behavior": "Declines to recommend buying, selling or holding; may share factual data on the user's NVDA position and its price and social data instead."
            },
            {
              "description": "Asset the user doesn't hold",
              "prompt": "What's the social sentiment for Dogecoin?",
              "expected_behavior": "get_asset returns that DOGE isn't held; the assistant explains SonarFolio only covers assets in the user's portfolio and does not invent data."
            }
          ]
        },
        "commerce": false,
        "commerce_description": "SonarFolio's plugin doesn't sell anything or process payments. It reads the user's own portfolio and can record a position they confirm.",
        "demo_recording_url": "https://www.youtube.com/watch?v=zyXEdSl5Wrg"
      },
      "publication": {
        "release_notes": "First release: portfolio summary, holdings, market and social data for held assets, asset search, and recording a position after the user confirms. Read-only otherwise; OAuth sign-in."
      },
      "apps": "./.app.json"
    }
  }
}

SHA-256: ff4b673baecad19f2a85e5892cc18da2fe2a34fa1fb63ee876c6fa3f4576afed