{
  "markdown": "# Option Desk\n\nOptions research with a local dashboard, agent skills, and MCP tools.\nImport a chain, inspect its Greeks and positioning, compare structures, and keep the results as readable files.\n\n[![Checks](https://github.com/Iman/agent-driven-options-desk-and-skills/actions/workflows/refresh.yml/badge.svg)](https://github.com/Iman/agent-driven-options-desk-and-skills/actions/workflows/refresh.yml) [![Tests](https://img.shields.io/badge/tests-1085%20collected-blue)](docs/TESTING.md) [![Unit coverage gate](https://img.shields.io/badge/unit%20coverage%20gate-80%25%20per%20package-blue)](docs/TESTING.md#run-the-80-unit-coverage-gate) [![Mutation cases](https://img.shields.io/badge/mutation%20cases-99-blue)](scripts/mutate.py) [![Python](https://img.shields.io/badge/python-3.11%2B-blue)](INSTALL.md)\n\n[![License](https://img.shields.io/badge/license-PolyForm%20Noncommercial-blue)](LICENSE) [![Ask DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/Iman/agent-driven-options-desk-and-skills) [![Local skills](https://img.shields.io/badge/local%20skills-6-blue)](docs/wiki/Skill-Installation.md#choose-the-correct-skill-edition) [![Hosted skills](https://img.shields.io/badge/hosted%20skills-4-blue)](docs/wiki/Skill-Installation.md#prepare-individual-browser-skill-zips) [![Local MCP tools](https://img.shields.io/badge/local%20MCP%20tools-12-blue)](docs/CAPABILITIES.md)\n\n[![Agent guides](https://img.shields.io/badge/guides-Codex%20%7C%20ChatGPT%20%7C%20Claude%20chat%20%7C%20Claude%20Code-blue)](docs/wiki/Skill-Installation.md) [![Last commit](https://img.shields.io/github/last-commit/Iman/agent-driven-options-desk-and-skills)](https://github.com/Iman/agent-driven-options-desk-and-skills/commits/main)\n\n[![MCP Registry](https://img.shields.io/badge/MCP%20Registry-com.avidquant%2Foptiondesk-blue)](https://registry.modelcontextprotocol.io/v0/servers?search=com.avidquant/optiondesk) [![smithery badge](https://smithery.ai/badge/iman-samizadeh/option-desk)](https://smithery.ai/servers/iman-samizadeh/option-desk) [![Option Desk MCP connector, tool definition quality and endpoint health on Glama](https://glama.ai/mcp/connectors/com.avidquant.optiondesk/option-desk/badges/score.svg)](https://glama.ai/mcp/connectors/com.avidquant.optiondesk/option-desk) [![Hosted sample](https://img.shields.io/badge/hosted%20sample-optiondesk.avidquant.com-blue)](https://optiondesk.avidquant.com)\n\n## Contents\n\n**On this page**\n\n- [See the desk](#see-the-desk)\n- [Get started](#get-started)\n- [Ask your agent](#ask-your-agent)\n- [Follow a research workflow](#follow-a-research-workflow)\n- [Read the documentation](#read-the-documentation)\n- [Development](#development)\n- [Licensing](#licensing)\n\n**Guides and wiki**\n\n- [Wiki](https://github.com/Iman/agent-driven-options-desk-and-skills/wiki)\n- [Architecture and diagrams](docs/wiki/Architecture.md)\n- [Install skills](docs/wiki/Skill-Installation.md)\n- [User guide](docs/wiki/Home.md)\n- [Examples](docs/wiki/Examples.md)\n- [Install](INSTALL.md)\n- [Troubleshooting](docs/wiki/Troubleshooting.md)\n\n## See the desk\n\nThe dashboard brings the chain, model assumptions, and research results onto one page.\nThese are captures of the current local dashboard with synthetic teaching inputs.\nThey are not market observations or evidence of trading performance.\n[Capture details](docs/SCREENSHOT-PROVENANCE.md) distinguish the input scenario from the capture date.\n\n![Structure comparison in the local dashboard, using synthetic inputs](docs/screenshots/dashboard-comparison.png)\n\n### Dashboard tour\n\nOpen an image for its full resolution. The [complete gallery](docs/SCREENSHOTS.md) includes individual panels and charts.\nThe [dashboard guide](docs/wiki/Dashboard.md) explains how to read them.\n\n| Positioning | Volatility |\n|---|---|\n| ![Synthetic dealer gamma, walls, open interest, and max pain](docs/screenshots/dashboard-positioning.png) | ![Synthetic volatility surface, smile, and Greek curves](docs/screenshots/dashboard-volatility.png) |\n| Inspect the assumed dealer exposure and chain coverage. | Compare strikes and expiries without hiding missing values. |\n\n| Structure payoff | Two-expiry structures |\n|---|---|\n| ![Synthetic option structure payoff and legs](docs/screenshots/dashboard-structures.png) | ![Synthetic calendar and diagonal comparison](docs/screenshots/dashboard-time-spreads.png) |\n| Read the legs, breakevens, and limits together. | Inspect the valuation assumptions for the surviving leg. |\n\n| Simulation | Backtest |\n|---|---|\n| ![Simulation panels from synthetic price history](docs/screenshots/dashboard-simulation.png) | ![Backtest panels from synthetic price history and modeled premiums](docs/screenshots/dashboard-backtest.png) |\n| Read the fan with the convergence diagnostics. | Read outcomes with the benchmark and model limitations. |\n\n| Composite comparison | Contract ladder |\n|---|---|\n| ![Composite scores and their components for synthetic structures](docs/screenshots/dashboard-composite.png) | ![Synthetic contract Greeks and overlaid strategy payoffs](docs/screenshots/dashboard-ladder.png) |\n| Inspect the formula and disagreements between models. | Compare sensitivities and payoff shapes. |\n\n![The dashboard pipeline from input through saved research artifacts](docs/screenshots/dashboard-pipeline.png)\n\n## Get started\n\nChoose one route:\n\n| Your starting point | First action | Continue with |\n|---|---|---|\n| I want to try it without a data account | Run the supplied sample below. | [First walkthrough](docs/wiki/Getting-Started.md) |\n| I use Claude Code or Codex | Install the local tools, then connect the plugin. | [Agent workflows](docs/wiki/Agent-Workflows.md) |\n| I have a CSV or JSON chain | Import it with its source and timestamp. | [Data import](docs/wiki/Importing-Data.md) |\n| I want a browser-based example | Open the [hosted sample](https://optiondesk.avidquant.com). | [Hosted connection](docs/wiki/Agent-Workflows.md#browser-agents-and-the-hosted-service) |\n\n### Try the supplied sample\n\nRequirements: Git and Python 3.11 or later.\nRun these commands on macOS or Linux:\n\n```sh\ngit clone https://github.com/Iman/agent-driven-options-desk-and-skills.git\ncd agent-driven-options-desk-and-skills\npython3 -m venv .venv\n. .venv/bin/activate\npython -m pip install -e ./engine -e ./shell\noptiondesk chain SYNTH --from-file examples/chain-synth.json --accept-data-rights --out-dir artifacts/tutorial\noptiondesk greeks --out-dir artifacts/tutorial\noptiondesk exposure --out-dir artifacts/tutorial\noptiondesk compare --out-dir artifacts/tutorial\noptiondesk dashboard --out-dir artifacts/tutorial\n```\n\nOpen **http://127.0.0.1:8787** on the same computer.\nSelect **SYNTH** and **2026-10-08**.\nPress `Ctrl+C` in the terminal to stop the server. The result files remain in `artifacts/tutorial`.\n\nThe supplied sample contains 62 synthetic contracts and a fixed valuation scenario.\nIt needs no external provider after installation.\nThe [walkthrough](docs/wiki/Getting-Started.md) includes Windows activation, expected results, and the next steps.\n[Sample provenance](examples/README.md) explains the inputs.\n\n### Install the full local desk\n\nFrom a checkout, run:\n\n```sh\n./install.sh\noptiondesk doctor\n```\n\nThis installs the local tools and skills and attempts MCP registration with supported runtime CLIs it finds.\n[Installation](INSTALL.md) covers paths, flags, Docker, and removal.\nA plugin installation alone does not install the local calculation engine.\n\nFor an existing local provider setup, run the complete demonstration:\n\n```sh\n./run.sh --symbols SPY\n```\n\nThe runner retrieves data, builds the research artifacts, opens a paper position, and serves the dashboard.\nIt writes to `~/TradingDesk/option-desk-demo` by default.\nUse `--dry-run` to inspect its commands.\nRead [provider setup](docs/wiki/Installation.md#local-provider-demo) before enabling Yahoo access.\n\n## Ask your agent\n\n### Install skills in your product\n\n| Product | Installation choices |\n|---|---|\n| [Codex](docs/wiki/Skill-Installation.md#codex) | `npx`, manual copy, shell installer, or plugin. |\n| [Claude Code](docs/wiki/Skill-Installation.md#claude-code) | `npx`, manual copy, shell installer, or plugin. |\n| [ChatGPT](docs/wiki/Skill-Installation.md#chatgpt) | Individual hosted-skill uploads where the account supports Skills, plus a separate MCP app. |\n| [Claude chat](docs/wiki/Skill-Installation.md#claude-chat) | Individual hosted-skill ZIPs plus a custom MCP connector. |\n\nThe [installation guide](docs/wiki/Skill-Installation.md) includes single-skill and all-skill commands, user/project scope, ZIP preparation, and connection checks.\n\nAfter connecting the local tools, ask:\n\n```text\nUse examples/chain-synth.json, the supplied synthetic teaching sample.\nI can use this file for private analysis.\nSave the results under artifacts/tutorial.\nShow its Greeks and positioning, then compare an iron condor with a straddle.\nState the source, missing inputs, model assumptions, and degradation first.\n```\n\n| What you want | Skill | Example |\n|---|---|---|\n| Working tools | `desk-setup` | Check why my MCP tools are unavailable. |\n| Contract sensitivities | `options-greeks` | Show delta, gamma, theta, and vega from this chain. |\n| Chain positioning | `options-positioning` | Show the gamma walls and state the dealer-sign assumption. |\n| Multi-leg structures | `options-strategy` | Compare these structures by payoff, loss, and Greeks. |\n| Forward distribution | `options-simulation` | Simulate the underlying from permitted history and report convergence. |\n| Historical research | `options-backtest` | Backtest this structure and explain the benchmark and missing costs. |\n\nThe local MCP server exposes 12 tools.\nThe hosted service supports a smaller workflow: snapshot validation, Greeks, positioning, and strategy plots.\nSimulation and backtests remain local workflows.\nSee [agent setup and prompts](docs/wiki/Agent-Workflows.md).\n\n## Follow a research workflow\n\n| Step | Action | What to inspect |\n|---|---|---|\n| 1. Load | [Import a chain](docs/wiki/Importing-Data.md) | Source, timestamp, expiry, and missing inputs. |\n| 2. Inspect | Calculate Greeks and positioning. | Units, skip counts, and dealer-sign assumptions. |\n| 3. Compare | [Build structures](docs/wiki/Examples.md#compare-two-structures) | Legs, breakevens, maximum loss, and spread costs. |\n| 4. Explore time | [Compare two expiries](docs/wiki/Examples.md#compare-two-expiries) | Near-expiry valuation and scan limits. |\n| 5. Research history | [Simulate or backtest](docs/wiki/Examples.md#simulate-a-real-underlying-locally) | Convergence, benchmarks, uncertainty, and omitted costs. |\n| 6. Record | [Open a paper position](docs/wiki/Examples.md#open-and-mark-a-paper-position) | Plan, thesis, later marks, and unavailable quotes. |\n\nThe dashboard reads saved artifacts. It does not fetch new data when you open the page.\nUse the same `--out-dir` for related commands and the dashboard.\nThe [results guide](docs/wiki/Reading-Results.md) explains how to interpret each stage.\n\n## Read the documentation\n\n| Guide | Purpose |\n|---|---|\n| [User guide home](docs/wiki/Home.md) | Choose a task and follow it to a result. |\n| [Installation reference](INSTALL.md) | eight install paths for local, plugin, skills-only, hosted, and container use. |\n| [Dashboard tour](docs/wiki/Dashboard.md) | Read the panels and identify missing calculations. |\n| [Examples](docs/wiki/Examples.md) | Copyable commands and expected results. |\n| [Troubleshooting](docs/wiki/Troubleshooting.md) | Installation, provider, import, and chart problems. |\n| [FAQ](FAQ.md) | Common questions and interpretation limits. |\n| [Capabilities](docs/CAPABILITIES.md) | Feature and interface catalogue. |\n| [Master algorithm](docs/wiki/Algorithm.md) | One pseudocode reference for skills, loops, graph routing, prompts, backtests, and paper tests. |\n| [Architecture](docs/wiki/Architecture.md) | Packages, data flow, contracts, current diagrams, and preserved design references. |\n| [Preserved project reference](docs/wiki/Reference-README.md) | Complete earlier README, with its engineering detail, measurements, and examples. |\n| [API inventory](docs/INVENTORY.md) | Generated public function and class reference. |\n| [Documentation map](docs/wiki/Documentation-Map.md) | All guides, policies, and maintenance references. |\n\n### Where the desk is listed\n\n| Listing | Link | Status |\n|---|---|---|\n| Official MCP Registry | [com.avidquant/optiondesk](https://registry.modelcontextprotocol.io/v0/servers?search=com.avidquant/optiondesk) | Published 2026-09-11. Remote entry for the hosted endpoint, domain verified. |\n| Smithery | [iman-samizadeh/option-desk](https://smithery.ai/servers/iman-samizadeh/option-desk) | Listed 2026-09-11. Hosted endpoint, 13 tools scanned, TXT record verified. |\n| Glama server | [Iman/agent-driven-options-desk-and-skills](https://glama.ai/mcp/servers/Iman/agent-driven-options-desk-and-skills) | Indexed from the repository, 12 local tools listed. |\n| Glama connector | [com.avidquant.optiondesk/option-desk](https://glama.ai/mcp/connectors/com.avidquant.optiondesk/option-desk) | Hosted endpoint, listed 2026-09-11, health checked by Glama, 13 tools. |\n| Claude Code and Codex marketplaces | This repository: `/plugin marketplace add Iman/agent-driven-options-desk-and-skills` | Local plugin `option-desk` and hosted plugin `option-desk-hosted`. |\n| Hosted sample | [optiondesk.avidquant.com](https://optiondesk.avidquant.com), MCP at `/mcp` | Synthetic SYNTH data, no account needed. |\n| LinkedIn article | [I built an options desk an agent can drive](https://www.linkedin.com/pulse/i-built-options-desk-agent-can-drive-iman-samizadeh-phd-yjhke) | Published 2026-09-10. |\n| dev.to | [dev.to/imansamizadeh](https://dev.to/imansamizadeh) | Repost of the article, canonical link to LinkedIn, publishes after the first week. |\n\nDirectory listings describe the hosted endpoint or the repository as they were on the date shown. The listing pages are maintained on each directory, not in this repository.\n\n## Development\n\n[Testing and coverage](docs/TESTING.md) covers happy and failure paths, BDD scenarios, integration checks, and the 80% unit line-coverage gate per package.\n\nRun from the repository root with the development dependencies installed.\nSee [Development](docs/wiki/Development.md) for environment setup and screenshot capture.\n\n```sh\npython -m pytest engine/tests -q    # 355 tests\npython -m pytest shell/tests -q     # 574 tests\npython -m pytest agent/tests -q     # 161 tests\npython -m pytest -q                # 1090 tests\n```\n\nThese are collection counts, not a claim that this documentation edit ran every test.\nThe workflow badge links to the actual CI result.\n\n```sh\npython3 scripts/refresh.py --no-index\npython3 scripts/mutate.py --list\n```\n\nTen stages in a full run rebuild generated documents and packages, check recorded evidence, and run the suites and repository rules.\nThe mutation harness defines ninety-nine mutations. Use its output to distinguish detected changes, survivors, and skipped cases.\n\nEight schemas under `shell/src/optiondesk/contracts/` define the artifact interface: 8 schemas + validator.\nSee [the architecture guide](docs/wiki/Architecture.md) for their roles.\n\n<details>\n<summary>Recorded historical example</summary>\n\nThe [evidence record](docs/evidence.json) pins an earlier chain measurement to `2026-08-30T14:12:17+00:00`.\nIt records `607 contracts, spot, listed expiries` and `595 solved, 12 refused as unidentified`.\nThese are historical evidence strings, not counts for the sample or the current screenshots.\nThe recorder retains them here for its existing documentation checks.\n\n</details>\n\n[Contribute](CONTRIBUTING.md) · [Backlog](docs/BACKLOG.md) · [Changelog](CHANGELOG.md) · [Security](SECURITY.md)\n\n## Licensing\n\nThe repository uses [PolyForm Noncommercial 1.0.0](LICENSE).\nIt is source available and free for noncommercial use.\nCommercial use requires a separate written agreement. See [LICENSES.md](LICENSES.md).\nThe software license does not grant rights to provider data.\n\nResearch software. No order placement. Model results are not fills, recommendations, or investment advice.\nRead the [disclaimer](DISCLAIMER.md), [privacy policy](PRIVACY.md), and [third-party notices](THIRD-PARTY.md).\n",
  "bytes": 16314,
  "sha": "2f71db9c6de47ca610be7804aa3a94f5cf4c0adceeea1b575b82b758ca119f3d",
  "repo_slug": "iman/agent-driven-options-desk-and-skills",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_com_avidquant_optiondesk_b298bed8/readme"
}