Good clean strategy data for agents.
SignalPack packages messy investing signals into source-backed artifacts that agents can inspect, score through ethos lenses, validate against policy, and hand off for human approval.
Demo flow
Artifact before action
Choose a pack
The agent asks for structured context instead of scraping raw filings, disclosure sites, or social pages.
Inspect sources
SignalPack keeps source records, freshness, lag, methodology version, and limitations attached to the signal.
Apply ethos
Methodology-specific lenses explain why a signal looks attractive, risky, irrelevant, or not yet scoreable.
Validate policy
The artifact returns pass/warn/blocked checks before any downstream order draft can happen.
Pack explorer
Browse the artifacts.
Each pack is a versioned, inspectable research object: source notes, normalized signals, model card, ethos interpretation, policy checks, and agent-ready JSON.
13F
launchInstitutional filing changes scored through selected ethos lenses with source, freshness, and policy context.
Signals
29
Policy
warn
As of
2026-05-15
Ethos
scored
Open artifact →
Pelosi
bridgeEstimated Pelosi-family holdings converted into an approval-gated, source-aware bridge artifact.
Signals
11
Policy
warn
As of
2026-06-01
Ethos
readiness
Open artifact →
Congress
bridgeCongressional disclosure clusters using the relaxed 30d/$25k/lag45 demo default, net-positive buy/sell overlay, filing lag, and strict-mode caveats attached.
Signals
10
Policy
warn
As of
2026-06-01
Ethos
readiness
Open artifact →
WSB
researchHigh-volatility social attention sleeve using positive mention velocity, upvotes, and representative Reddit RSS context when available.
Signals
10
Policy
warn
As of
2026-06-04
Ethos
readiness
Open artifact →
Ethos layer
Same signal, different standards.
The demo should make this obvious: SignalPack is not a generic score. It preserves methodology-specific reasoning so agents and humans can see why a pack passes, warns, fails, or needs more data.
Intelligent Investor
ValueInspired by Benjamin Graham
Screens 13F changes through size, financial strength, earnings stability, dividends, valuation discipline, and margin of safety.
Moat Builder
QualityInspired by Buffett + Munger
Scores whether a 13F change points at a durable business with high returns, low leverage, capable management, and long-term compounding potential.
Disruption Thesis
GrowthInspired by ARK / Wood
Scores 13F changes through innovation-platform exposure, TAM expansion, revenue acceleration, platform dynamics, and network effects.
Bogle Default
DiversifiedInspired by Jack Bogle
A skeptical baseline that favors diversification, liquidity, low turnover, and position sizing discipline over concentrated single-name excitement.
Momentum Default
TrendInspired by Richard Driehaus
Scores relative strength, recent growth, filer adds, liquidity, and volatility so momentum can be explicit without becoming unconstrained hype.
Agent output
The payload is the product.
This is what execution-capable agents need upstream: normalized signals, source caveats, ethos interpretation, and policy checks in one object. Not a page scrape. Not a trade command.
Example endpoint
GET /api/packs/13f-copycat/latest{
"pack": "13f-copycat",
"title": "Berkshire Hathaway 13F Copycat artifact",
"version": "berkshire-hathaway-2026-03-31-v0.1",
"asOf": "2026-05-15",
"status": "launch",
"source": {
"type": "SEC_13F",
"sample": false,
"urls": [
"https://www.sec.gov/Archives/edgar/data/1067983/000119312526226661/53405.xml",
"https://www.sec.gov/Archives/edgar/data/1067983/000119312526054580/50240.xml"
],
"freshnessNotes": [
"Latest filing date: 2026-05-15",
"Report quarter/date: 2026-03-31",
"13F filings can lag quarter-end by up to 45 days."
],
"limitations": [
"Read-only research artifact. No execution, custody, or personalized advice.",
"CUSIP-to-ticker mapping currently uses fixture provider data.",
"Fundamental context combines SEC Company Facts financial metrics with fixture thematic/valuation fields for demo scoring (sec-company-facts-v0.1:28, fixture-fundamentals-v0.2:29).",
"All selected raw change candidates mapped to tickers."
]
},
"methodologyVersion": "13f-ethos-live-v0.1",
"signals": [
{
"ticker": "GOOGL",
"action": "added",
"reviewStatus": "candidate",
"weightPct": 5.93,
"summary": "Berkshire Hathaway added Alphabet Class A (GOOGL) by 36,403,656 shares. Current 13F weight is 5.93%. SignalPack scores this change through selected ethos lenses before any handoff.",
"convictionSignals": [
"Berkshire Hathaway added 36,403,656 shares",
"Current 13F weight 5.93%",
"Market-value change $10.0B"
],
"sourceIds": [
"0001193125-26-226661",
"0001193125-26-054580"
],
"ethosScores": [
{
"ethosId": "intelligent-investor",
"score": 3,
"maxScore": 7,
"status": "warn"
},
{
"ethosId": "moat-builder",
"score": 6,
"maxScore": 6,
"status": "pass"
},
{
"ethosId": "disruption-thesis",
"score": 5,
"maxScore": 5,
"status": "pass"
}
]
},
{
"ticker": "BAC",
"action": "reduced",
"reviewStatus": "warn",
"weightPct": 9.52,
"summary": "Berkshire Hathaway reduced Bank of America (BAC) by 3,671,769 shares. Current 13F weight is 9.52%. SignalPack scores this change through selected ethos lenses before any handoff.",
"convictionSignals": [
"Berkshire Hathaway reduced 3,671,769 shares",
"Current 13F weight 9.52%",
"Market-value change -$3.4B"
],
"sourceIds": [
"0001193125-26-226661",
"0001193125-26-054580"
],
"ethosScores": [
{
"ethosId": "intelligent-investor",
"score": 4,
"maxScore": 7,
"status": "warn"
},
{
"ethosId": "moat-builder",
"score": 0,
"maxScore": 6,
"status": "fail"
},
{
"ethosId": "disruption-thesis",
"score": 0,
"maxScore": 5,
"status": "fail"
}
]
},
{
"ticker": "V",
"action": "exited",
"reviewStatus": "warn",
"weightPct": 0,
"summary": "Berkshire Hathaway exited Visa (V) by 8,297,460 shares. Current 13F weight is 0%. SignalPack scores this change through selected ethos lenses before any handoff.",
"convictionSignals": [
"Berkshire Hathaway exited 8,297,460 shares",
"Current 13F weight 0%",
"Market-value change -$2.9B"
],
"sourceIds": [
"0001193125-26-226661",
"0001193125-26-054580"
],
"ethosScores": [
{
"ethosId": "intelligent-investor",
"score": 3,
"maxScore": 7,
"status": "warn"
},
{
"ethosId": "moat-builder",
"score": 5,
"maxScore": 6,
"status": "pass"
},
{
"ethosId": "disruption-thesis",
"score": 4,
"maxScore": 5,
"status": "pass"
}
]
},
{
"ticker": "DAL",
"action": "new",
"reviewStatus": "candidate",
"weightPct": 1.01,
"summary": "Berkshire Hathaway new Delta Air Lines (DAL) by 39,809,456 shares. Current 13F weight is 1.01%. SignalPack scores this change through selected ethos lenses before any handoff.",
"convictionSignals": [
"Berkshire Hathaway new 39,809,456 shares",
"Current 13F weight 1.01%",
"Market-value change $2.6B"
],
"sourceIds": [
"0001193125-26-226661",
"0001193125-26-054580"
],
"ethosScores": [
{
"ethosId": "intelligent-investor",
"score": 3,
"maxScore": 7,
"status": "warn"
},
{
"ethosId": "moat-builder",
"score": 0,
"maxScore": 6,
"status": "fail"
},
{
"ethosId": "disruption-thesis",
"score": 0,
"maxScore": 5,
"status": "fail"
}
]
},
{
"ticker": "CVX",
"action": "reduced",
"reviewStatus": "warn",
"weightPct": 6.64,
"summary": "Berkshire Hathaway reduced Chevron (CVX) by 45,780,506 shares. Current 13F weight is 6.64%. SignalPack scores this change through selected ethos lenses before any handoff.",
"convictionSignals": [
"Berkshire Hathaway reduced 45,780,506 shares",
"Current 13F weight 6.64%",
"Market-value change -$2.4B"
],
"sourceIds": [
"0001193125-26-226661",
"0001193125-26-054580"
],
"ethosScores": [
{
"ethosId": "intelligent-investor",
"score": 2,
"maxScore": 7,
"status": "fail"
},
{
"ethosId": "moat-builder",
"score": 2,
"maxScore": 6,
"status": "fail"
},
{
"ethosId": "disruption-thesis",
"score": 0,
"maxScore": 5,
"status": "fail"
}
]
},
{
"ticker": "MA",
"action": "exited",
"reviewStatus": "warn",
"weightPct": 0,
"summary": "Berkshire Hathaway exited Mastercard (MA) by 3,986,648 shares. Current 13F weight is 0%. SignalPack scores this change through selected ethos lenses before any handoff.",
"convictionSignals": [
"Berkshire Hathaway exited 3,986,648 shares",
"Current 13F weight 0%",
"Market-value change -$2.3B"
],
"sourceIds": [
"0001193125-26-226661",
"0001193125-26-054580"
],
"ethosScores": [
{
"ethosId": "intelligent-investor",
"score": 2,
"maxScore": 7,
"status": "fail"
},
{
"ethosId": "moat-builder",
"score": 5,
"maxScore": 6,
"status": "pass"
},
{
"ethosId": "disruption-thesis",
"score": 4,
"maxScore": 5,
"status": "pass"
}
]
},
{
"ticker": "STZ",
"action": "reduced",
"reviewStatus": "warn",
"weightPct": 0.04,
"summary": "Berkshire Hathaway reduced Constellation Brands (STZ) by 12,367,110 shares. Current 13F weight is 0.04%. SignalPack scores this change through selected ethos lenses before any handoff.",
"convictionSignals": [
"Berkshire Hathaway reduced 12,367,110 shares",
"Current 13F weight 0.04%",
"Market-value change -$1.7B"
],
"sourceIds": [
"0001193125-26-226661",
"0001193125-26-054580"
],
"ethosScores": [
{
"ethosId": "intelligent-investor",
"score": 1,
"maxScore": 7,
"status": "fail"
},
{
"ethosId": "moat-builder",
"score": 0,
"maxScore": 6,
"status": "fail"
},
{
"ethosId": "disruption-thesis",
"score": 0,
"maxScore": 5,
"status": "fail"
}
]
},
{
"ticker": "UNH",
"action": "exited",
"reviewStatus": "warn",
"weightPct": 0,
"summary": "Berkshire Hathaway exited UnitedHealth Group (UNH) by 5,039,564 shares. Current 13F weight is 0%. SignalPack scores this change through selected ethos lenses before any handoff.",
"convictionSignals": [
"Berkshire Hathaway exited 5,039,564 shares",
"Current 13F weight 0%",
"Market-value change -$1.7B"
],
"sourceIds": [
"0001193125-26-226661",
"0001193125-26-054580"
],
"ethosScores": [
{
"ethosId": "intelligent-investor",
"score": 3,
"maxScore": 7,
"status": "warn"
},
{
"ethosId": "moat-builder",
"score": 4,
"maxScore": 6,
"status": "warn"
},
{
"ethosId": "disruption-thesis",
"score": 0,
"maxScore": 5,
"status": "fail"
}
]
}
],
"ethos": [
{
"id": "intelligent-investor",
"status": "fail",
"summary": "0 pass, 19 warn, 10 fail across 29 scored changes."
},
{
"id": "moat-builder",
"status": "fail",
"summary": "5 pass, 7 warn, 17 fail across 29 scored changes."
},
{
"id": "disruption-thesis",
"status": "fail",
"summary": "5 pass, 0 warn, 24 fail across 29 scored changes."
}
],
"policy": {
"executionEnabled": false,
"humanApprovalRequired": true,
"status": "warn",
"checks": [
{
"id": "execution-disabled",
"label": "Execution",
"status": "pass",
"message": "SignalPack does not execute trades or connect to broker accounts."
},
{
"id": "human-approval-required",
"label": "Human approval",
"status": "pass",
"message": "Any downstream order draft must be approved outside SignalPack."
},
{
"id": "max-position-weight",
"label": "Max position",
"status": "pass",
"message": "No surfaced position exceeds the 12% policy cap."
},
{
"id": "source-coverage",
"label": "Source coverage",
"status": "pass",
"message": "Every surfaced change has at least one source record."
},
{
"id": "ethos-failure-count",
"label": "Ethos failures",
"status": "warn",
"message": "CVX, STZ, FWONK, LLYVK, M, LILA, LILAK, BATRK fails more than 2 selected ethos lenses."
}
],
"blockedReasons": []
},
"handoff": {
"executionEnabled": false,
"humanApprovalRequired": true,
"nextAgentAction": "prepare_review_brief"
}
}