Agent-visible Charts
Customer guide
At a glance
Charts are no longer just screenshots for humans. Cornerstones renders chart artifacts agents can see, compare, and reason over, while keeping the request metadata and response contract attached.
First chart command
cornerstones-client chart fx --symbol XAUUSD --timeframe 15m --bars 200 --indicator ema20 --indicator rsi14What this is for
- Visual price-action inspection by multimodal agents.
- Iterating across timeframe, lookback, and overlays before writing a market note.
- Attaching chart evidence to a context packet instead of pasting an unverified image.
- Separating chart artifact freshness from the language model's own memory.
Common variants
cornerstones-client chart fx --symbol EURUSD --timeframe 1h --bars 120 --indicator ema20
cornerstones-client chart stocks --symbol AAPL --timeframe 1d --bars 180 --indicator sma50
cornerstones-client chart fx --symbol XAUUSD --timeframe 5m --bars 240 --template momentum --layout compactLive response
Captured from a live Cornerstones API response on 2026-05-07T13:21Z. The capture key is not shown. Source details are normalized to Cornerstones labels.
JSON responseShow full responseHide response
{
"symbol": "XAUUSD",
"timeframe": "15m",
"bars_count": 200,
"engine": "cornerstones_chart_renderer",
"image_path": "/tmp/cornerstones/charts/fx_XAUUSD_15m_200_1778160111859.png",
"html_path": "/tmp/cornerstones/charts/fx_XAUUSD_15m_200_1778160111859.html",
"manifest_path": "/tmp/cornerstones/charts/fx_XAUUSD_15m_200_1778160111859.manifest.json",
"image_url": "/v1/charting/artifacts/fx_XAUUSD_15m_200_1778160111859.png",
"html_url": "/v1/charting/artifacts/fx_XAUUSD_15m_200_1778160111859.html",
"manifest_url": "/v1/charting/artifacts/fx_XAUUSD_15m_200_1778160111859.manifest.json",
"image_width": 1600,
"image_height": 1000,
"indicators": [
"rsi"
],
"requested_indicators": [
"rsi14"
],
"provenance": "cornerstones_chart_local",
"degraded": false,
"fallback": null,
"message": "Cornerstones chart rendered",
"symbol_requested": "XAUUSD",
"symbol_resolved": "XAUUSD",
"market": "fx",
"bars_policy": "explicit",
"template": "legacy_default",
"layout": "single",
"chart_type": "candlestick",
"artifacts": {
"image_path": "/tmp/cornerstones/charts/fx_XAUUSD_15m_200_1778160111859.png",
"html_path": "/tmp/cornerstones/charts/fx_XAUUSD_15m_200_1778160111859.html",
"manifest_path": "/tmp/cornerstones/charts/fx_XAUUSD_15m_200_1778160111859.manifest.json",
"image_url": "/v1/charting/artifacts/fx_XAUUSD_15m_200_1778160111859.png",
"html_url": "/v1/charting/artifacts/fx_XAUUSD_15m_200_1778160111859.html",
"manifest_url": "/v1/charting/artifacts/fx_XAUUSD_15m_200_1778160111859.manifest.json"
},
"applied_indicators": [
"rsi"
],
"layers": [],
"requested_layers": [],
"applied_layers": [],
"include": [
"quote",
"indicators",
"session"
],
"manifest": {
"render_spec": {
"market": "fx",
"symbol_requested": "XAUUSD",
"symbol_resolved": "XAUUSD",
"exchange_resolved": "FX",
"timeframe": "15m",
"bars_policy": "explicit",
"bars_target": 200,
"template": "legacy_default",
"layout": "single",
"chart_type": "candlestick",
"layers_requested": [],
"layers_applied": [],
"requested_indicators": [
"rsi14"
],
"applied_indicators": [
"rsi"
],
"grid_config": null,
"context_symbols": []
},
"visible_window": {
"visible_range_from": "2026-05-05T13:30:00+01:00",
"visible_range_to": "2026-05-07T17:15:00+01:00",
"visible_bars_actual": 200,
"last_visible_bar_timestamp": "2026-05-07T17:15:00+01:00",
"reason": null
},
"price_edge": {
"last_visible_bar": {
"open": 4732.89,
"high": 4742.32,
"low": 4731.22,
"close": 4742.32,
"timestamp": "2026-05-07T17:15:00+01:00"
},
"live_quote": {
"last": 4742.639999999999,
"bid": 4742.32,
"ask": 4742.96,
"mid": 4742.639999999999,
"timestamp": "2026-05-07T16:21:54+01:00",
"freshness_ms": -7202126,
"provenance": "cornerstones_market_data",
"degraded": false
},
"right_axis_anchor_price": 4742.639999999999,
"anchor_price_type": "live_quote",
"delta_live_vs_last_bar_close": 0.32,
"delta_live_vs_last_bar_close_pct": 0.00674775
},
"companion": {
"price_summary": {
"requested": null,
"available": null,
"degraded": null,
"reason": null,
"message": null,
"provenance": null,
"semantic_class": "deterministic_derived",
"producer_type": "charting_service",
"source_class": "fact_derived",
"availability": {
"requested": true,
"available": true,
"degraded": false,
"reason": null,
"message": null
},
"source_ref": {
"component": null,
"provenance": null,
"quote_provenance": "cornerstones_market_data",
"bars_provenance": "cornerstones_market_data"
},
"gating_state": null,
"generated_by_cornerstones": true,
"is_cornerstones_house_view": true,
"consumer_guidance": "Use as deterministic derived companion summary, not raw market truth.",
"usage_note": "Derived from the live quote and the last visible bar.",
"last_price": 4742.639999999999,
"bid": 4742.32,
"ask": 4742.96,
"mid": 4742.639999999999,
"last_bar_close": 4742.32,
"anchor_price": 4742.639999999999,
"anchor_price_type": "live_quote",
"quote_provenance": "cornerstones_market_data",
"bars_provenance": "cornerstones_market_data"
},
"indicator_snapshot": {
"requested": null,
"available": null,
"degraded": false,
"reason": null,
"message": null,
"provenance": "cornerstones_market_data",
"semantic_class": "deterministic_derived",
"producer_type": "charting_service",
"source_class": "fact_derived",
"availability": {
"requested": true,
"available": true,
"degraded": false,
"reason": null,
"message": null
},
"source_ref": {
"component": "indicators",
"provenance": "cornerstones_market_data"
},
"gating_state": null,
"generated_by_cornerstones": true,
"is_cornerstones_house_view": true,
"consumer_guidance": "Use as deterministic derived companion summary, not raw market truth.",
"usage_note": "Structured companion export from stocks indicators.",
"price_summary": {
"last": 4742.32,
"high_20": 4752.49,
"low_20": 4721.42
},
"indicators": {
"ema_20": 4737.020656856778,
"ema_50": 4725.080373807326,
"rsi_14": 55.131658621575625,
"adx": 14.442520816230475,
"macd_12_26_9": {
"line": 5.105477639183846,
"signal": 5.68803166273981,
"histogram": -0.5825540235559643
},
"atr_14": 10.287393714373612,
"vwap": 4675.184097860914,
"bollinger_20_2": {
"upper": 4748.861715661268,
"middle": 4737.052000000001,
"lower": 4725.242284338733
},
"returns_1d": 0.012664931315542693,
"returns_5d": 0.02616289763125268
}
},
"session_summary": {
"requested": null,
"available": null,
"degraded": false,
"reason": null,
"message": null,
"provenance": "cornerstones_market_data",
"semantic_class": "deterministic_derived",
"producer_type": "charting_service",
"source_class": "fact_derived",
"availability": {
"requested": true,
"available": true,
"degraded": false,
"reason": null,
"message": null
},
"source_ref": {
"component": "session",
"provenance": "cornerstones_market_data"
},
"gating_state": null,
"generated_by_cornerstones": true,
"is_cornerstones_house_view": true,
"consumer_guidance": "Use as deterministic derived companion summary, not raw market truth.",
"usage_note": "Structured companion export from stocks session data.",
"session_name": "overlap",
"market_session": "overlap",
"is_session_open": true,
"session_window": {
"start": "13:00Z",
"end": "16:00Z",
"timezone": "UTC"
},
"session_open": null,
"session_high": 4736.05,
"session_low": 4726.31,
"distance_to_session_high": 6.289999999999964,
"distance_to_session_low": 16.029999999999745,
"previous_day_high": null,
"previous_day_low": null,
"previous_close": null
},
"context_summary": {
"requested": null,
"available": null,
"degraded": null,
"reason": null,
"message": null,
"provenance": null,
"semantic_class": null,
"producer_type": null,
"source_class": null,
"availability": null,
"source_ref": null,
"gating_state": null,
"generated_by_cornerstones": null,
"is_cornerstones_house_view": null,
"consumer_guidance": null,
"usage_note": null
},
"cross_asset_summary": {
"requested": null,
"available": null,
"degraded": null,
"reason": null,
"message": null,
"provenance": null,
"semantic_class": null,
"producer_type": null,
"source_class": null,
"availability": null,
"source_ref": null,
"gating_state": null,
"generated_by_cornerstones": null,
"is_cornerstones_house_view": null,
"consumer_guidance": null,
"usage_note": null
},
"multi_timeframe_bars": {
"requested": null,
"available": null,
"degraded": null,
"reason": null,
"message": null,
"provenance": null,
"semantic_class": null,
"producer_type": null,
"source_class": null,
"availability": null,
"source_ref": null,
"gating_state": null,
"generated_by_cornerstones": null,
"is_cornerstones_house_view": null,
"consumer_guidance": null,
"usage_note": null
},
"advanced_summary": {
"requested": null,
"available": null,
"degraded": null,
"reason": null,
"message": null,
"provenance": null,
"semantic_class": null,
"producer_type": null,
"source_class": null,
"availability": null,
"source_ref": null,
"gating_state": null,
"generated_by_cornerstones": null,
"is_cornerstones_house_view": null,
"consumer_guidance": null,
"usage_note": null
}
},
"capabilities": {
"supports_session_overlay": false,
"supports_session_profile": false,
"supports_cvd": false,
"supports_vwap": false,
"supports_benchmarks": false
},
"governance": {
"experimental": false,
"degraded": false,
"fallback": null,
"usage_hint": "analysis_and_agent_reading",
"manifest_semantics_version": "chart_manifest_v2",
"component_status": {
"price_summary": {
"requested": true,
"available": true,
"degraded": false,
"reason": null,
"message": null,
"provenance": null,
"semantic_class": "deterministic_derived",
"producer_type": "charting_service",
"source_class": "fact_derived",
"availability": null,
"source_ref": {
"component": null,
"provenance": null,
"quote_provenance": "cornerstones_market_data",
"bars_provenance": "cornerstones_market_data"
},
"gating_state": null,
"generated_by_cornerstones": null,
"is_cornerstones_house_view": null,
"consumer_guidance": null,
"usage_note": null
},
"indicator_snapshot": {
"requested": true,
"available": true,
"degraded": false,
"reason": null,
"message": null,
"provenance": null,
"semantic_class": "deterministic_derived",
"producer_type": "charting_service",
"source_class": "fact_derived",
"availability": null,
"source_ref": {
"component": "indicators",
"provenance": "cornerstones_market_data"
},
"gating_state": null,
"generated_by_cornerstones": null,
"is_cornerstones_house_view": null,
"consumer_guidance": null,
"usage_note": null
},
"session_summary": {
"requested": true,
"available": true,
"degraded": false,
"reason": null,
"message": null,
"provenance": null,
"semantic_class": "deterministic_derived",
"producer_type": "charting_service",
"source_class": "fact_derived",
"availability": null,
"source_ref": {
"component": "session",
"provenance": "cornerstones_market_data"
},
"gating_state": null,
"generated_by_cornerstones": null,
"is_cornerstones_house_view": null,
"consumer_guidance": null,
"usage_note": null
},
"context_summary": {
"requested": false,
"available": false,
"degraded": false,
"reason": null,
"message": null,
"provenance": null,
"semantic_class": null,
"producer_type": null,
"source_class": null,
"availability": null,
"source_ref": null,
"gating_state": null,
"generated_by_cornerstones": null,
"is_cornerstones_house_view": null,
"consumer_guidance": null,
"usage_note": null
},
"cross_asset_summary": {
"requested": false,
"available": false,
"degraded": false,
"reason": null,
"message": null,
"provenance": null,
"semantic_class": null,
"producer_type": null,
"source_class": null,
"availability": null,
"source_ref": null,
"gating_state": null,
"generated_by_cornerstones": null,
"is_cornerstones_house_view": null,
"consumer_guidance": null,
"usage_note": null
},
"multi_timeframe_bars": {
"requested": false,
"available": false,
"degraded": false,
"reason": null,
"message": null,
"provenance": null,
"semantic_class": null,
"producer_type": null,
"source_class": null,
"availability": null,
"source_ref": null,
"gating_state": null,
"generated_by_cornerstones": null,
"is_cornerstones_house_view": null,
"consumer_guidance": null,
"usage_note": null
},
"advanced_summary": {
"requested": false,
"available": false,
"degraded": false,
"reason": null,
"message": null,
"provenance": null,
"semantic_class": null,
"producer_type": null,
"source_class": null,
"availability": null,
"source_ref": null,
"gating_state": null,
"generated_by_cornerstones": null,
"is_cornerstones_house_view": null,
"consumer_guidance": null,
"usage_note": null
}
},
"notes": []
}
},
"capabilities": {
"supports_session_overlay": false,
"supports_session_profile": false,
"supports_cvd": false,
"supports_vwap": false,
"supports_benchmarks": false
},
"experimental": false
}Access
Charts require Pro or Max. If unavailable, use an allowed quote or bars command instead.