Help us improve
Share bugs, ideas, or general feedback.
From itropa
This skill activates when working in an ITROPA research workspace. It provides data structure knowledge, session continuity, and conversational research capabilities.
npx claudepluginhub joncik91/itropa-pluginHow this skill is triggered — by the user, by Claude, or both
Slash command
/itropa:itropa-workspaceThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
This skill activates when working in an ITROPA research workspace. It provides data structure knowledge, session continuity, and conversational research capabilities.
Orchestrates research workflows from question definition to evidence-based findings documentation for technical, requirements, literature, and codebase topics.
Orchestrates research workflows for technical questions, codebase patterns, requirements, and best practices with multi-source gathering, synthesis, and evidence-based reporting.
Multi-AI orchestration research (Double Diamond Discover phase). Probes Codex, Gemini, Copilot, Qwen, and other providers in parallel; synthesizes results for broad exploration.
Share bugs, ideas, or general feedback.
This skill activates when working in an ITROPA research workspace. It provides data structure knowledge, session continuity, and conversational research capabilities.
Activate when:
research/index.json/itropa:* command is invokedOn new session:
constraints.json for builder profileresearch/index.json for research stateresearch/{slug}/{latestRun}/digest.json (NOT the full data files). Digests are ~1KB each and give you scores, top mechanisms, top concepts, tags, and key insights.research/graph.json for cross-need connectionsWelcome back! You have {N} needs explored across {R} total runs, {M} industries discovered.
Top opportunity: {name} ({score}/100, verdict: {verdict})
Cross-need connections: {C} shared mechanisms/themes found
Ready to continue? Try /itropa:status or just tell me what you want to explore.
Important: Only read full data files (mechanisms.json, deep-dives.json, etc.) when the user specifically requests that data. Digests are sufficient for session resume and most queries.
| Command | Purpose |
|---|---|
/itropa:setup | Initialize workspace (creates graph.json, installs MCP deps) |
/itropa:go <need> | Full autonomous pipeline: research agents → consolidate intelligence → tree → triage → branch → mechanisms → deep-dive → concepts → cross-pollinate → digest → graph → report. Uses web search for real market data when available. |
/itropa:status [search] | Dashboard + search (uses MCP search if available) |
/itropa:constraints | Builder profile |
After a pipeline completes (or anytime with existing data), the user can just talk. Handle these naturally:
search_research tool if available, else read filesget_timeline or read digests, show side-by-side comparisonfind_connections or read graph.jsonAll analysis capabilities from the 7 skills are available conversationally. The user never needs to remember a command name — they describe what they want and Claude uses the appropriate skill.
{workspace}/
├── CLAUDE.md # Session instructions
├── constraints.json # Builder profile
└── research/
├── index.json # Master index (v2.0.0)
├── graph.json # Cross-need connections
├── .search.db # SQLite FTS5 index (auto-generated by MCP)
└── {need-slug}/
├── runs.json # Run history for this need
├── {YYYY-MM-DD}/ # Timestamped run directory
│ ├── intelligence.json # Consolidated research agent output (web + knowledge)
│ ├── need.json # Need + prior art + industry tree
│ ├── mechanisms.json # 5-framework analyses per industry
│ ├── deep-dives.json # Business analyses per industry
│ ├── app-concepts.json # Product concepts per industry
│ ├── cross-pollinations.json
│ └── digest.json # Compact summary (~1KB) — READ THIS FIRST
└── {YYYY-MM-DD-2}/ # Same-day re-run (suffix for collisions)
├── ...
└── digest.json
Key difference from v1: Data files are inside timestamped directories. Re-researching a need creates a new directory, preserving all previous data.
The pipeline dispatches 3 parallel research agents at the start of each run:
| Agent | Model | Tools | Purpose |
|---|---|---|---|
knowledge-researcher | sonnet | Read, WebSearch, WebFetch | Prior art, historical patterns, biomimicry, abstract mechanisms — training knowledge verified and enriched via web search |
market-researcher | sonnet | Read, WebSearch, WebFetch | Companies, funding, pricing, market sizing, competitive gaps — training knowledge combined with real web data |
trend-researcher | sonnet | Read, WebSearch, WebFetch | Recent launches, YC/ProductHunt, technology shifts, timing signals — training knowledge combined with real web data |
Each agent combines training knowledge with web search: starting from what Claude knows, then verifying and enriching via web. Every data point is tagged as knowledgeBased, webVerified, or webOnly. Their outputs merge into intelligence.json — a unified brief that feeds all downstream phases. If web search is unavailable, all agents fall back to training knowledge only.
{
"version": "2.0.0",
"createdAt": "ISO timestamp",
"lastUpdated": "ISO timestamp",
"needs": {
"need-slug": {
"name": "Need Name",
"slug": "need-slug",
"icon": "Users",
"description": "Brief description",
"createdAt": "ISO timestamp",
"lastUpdated": "ISO timestamp",
"totalRuns": 2,
"latestRun": "2026-03-15",
"latestTopIndustry": {
"name": "Industry Name",
"score": 84,
"verdict": "BUILD"
},
"tags": ["reputation", "trust"],
"stats": {
"industries": 5,
"mechanisms": 15,
"deepDives": 3,
"appConcepts": 5,
"crossPollinations": 5,
"chains": 0
}
}
},
"totalNeeds": 1,
"totalIndustries": 5
}
{
"techStack": ["React", "TypeScript", "Node.js"],
"experienceLevel": "intermediate",
"hasAIAccess": true,
"availableTime": "2-4 weeks",
"workStyle": "side-project",
"revenueGoal": "side-income",
"targetMRR": "$1-5k",
"preferredFormFactors": ["saas", "tool", "api"],
"avoidCategories": [],
"preferB2B": true,
"preferB2C": true,
"riskTolerance": "medium",
"lastUpdated": "ISO timestamp"
}
{
"need": "Status",
"runDate": "2026-02-28",
"constraintsSnapshot": {
"experienceLevel": "intermediate",
"targetMRR": "$1-5k",
"techStack": ["React", "TypeScript", "Node.js"],
"availableTime": "2-4 weeks",
"workStyle": "side-project"
},
"industries": [
{ "id": "status-1", "name": "Reputation Economy Platform", "score": 85, "verdict": "BUILD" },
{ "id": "status-2", "name": "AI Status Signaling", "score": 72, "verdict": "EXPLORE" },
{ "id": "status-3", "name": "Digital Legacy Markets", "score": 58, "verdict": "SKIP" }
],
"topMechanisms": ["trust-building", "reputation-signaling", "social-proof"],
"topConcepts": [
{ "name": "RepuChain", "score": 80, "effort": "2-4 weeks" },
{ "name": "QuickCred", "score": 75, "effort": "weekend" }
],
"tags": ["reputation", "trust", "credibility", "social-proof", "signaling"],
"keyInsights": [
"Trust-building mechanisms transfer across all status industries",
"Weekend-buildable concepts exist in reputation verification",
"B2B reputation tools have clearer monetization than B2C"
],
"dataSources": {
"knowledgeBased": 12,
"webVerified": 8,
"webOnly": 5
}
}
{
"priorArt": {
"currentLeaders": [{ "name": "", "domain": "", "mechanism": "", "limitation": "", "source": "knowledgeBased|webVerified|webOnly" }],
"historical": [{ "name": "", "era": "", "mechanism": "", "lesson": "", "source": "knowledgeBased" }],
"adjacent": [{ "name": "", "originalDomain": "", "mechanism": "", "transferPotential": "", "source": "knowledgeBased" }],
"nature": [{ "name": "", "mechanism": "", "biomimicryPotential": "", "source": "knowledgeBased" }]
},
"marketData": {
"companies": [{ "name": "", "url": "", "funding": "", "pricing": "", "limitation": "", "source": "webVerified" }],
"marketSize": "",
"segments": [],
"pricingLandscape": { "freeOptions": [], "lowEnd": "", "midRange": "", "enterprise": "", "commonModels": [] },
"recentFunding": []
},
"trends": {
"hotNow": [],
"emerging": [],
"technologyEnablers": [],
"soloDevOpportunities": []
},
"patterns": [{ "name": "", "mechanism": "", "examples": [], "transferPotential": "" }],
"dataSources": { "knowledgeBased": 0, "webVerified": 0, "webOnly": 0 }
}
{
"need": "Status",
"slug": "status",
"runs": [
{
"date": "2026-02-28",
"constraintsSnapshot": {
"experienceLevel": "intermediate",
"techStack": ["React", "TypeScript", "Node.js"]
},
"stats": {
"industries": 8,
"mechanisms": 15,
"deepDives": 3,
"appConcepts": 5,
"crossPollinations": 5
},
"topIndustry": {
"name": "Reputation Economy Platform",
"score": 84,
"verdict": "BUILD"
},
"tags": ["reputation", "trust"]
}
]
}
{
"version": "1.0.0",
"connections": [
{
"type": "shared-mechanism",
"source": { "need": "status", "run": "2026-02-28", "item": "status-1" },
"target": { "need": "belonging", "run": "2026-03-01", "item": "belonging-3" },
"mechanism": "trust-building",
"strength": 0.85
},
{
"type": "shared-theme",
"source": { "need": "status", "run": "2026-02-28" },
"target": { "need": "belonging", "run": "2026-03-01" },
"mechanism": "social-proof",
"strength": 0.70
}
],
"themes": {
"trust": {
"occurrences": [
{ "need": "status", "run": "2026-02-28", "context": "Trust-building core to reputation industries" },
{ "need": "belonging", "run": "2026-03-01", "context": "Trust enables community formation" }
]
}
}
}
{
"id": "slug",
"name": "Need Name",
"icon": "Users",
"description": "Core need description",
"priorArt": {
"currentLeaders": [{"name": "", "domain": "", "mechanism": "", "limitation": ""}],
"historicalPrecedents": [{"name": "", "era": "", "mechanism": "", "lesson": ""}],
"adjacentDomains": [{"name": "", "originalDomain": "", "mechanism": "", "transferPotential": ""}],
"natureSolutions": [{"name": "", "mechanism": "", "biomimicryPotential": ""}]
},
"eras": [
{"name": "Pre-Industrial", "expressions": [""]},
{"name": "Industrial", "expressions": [""]},
{"name": "Digital (2000s-2020)", "expressions": [""]},
{"name": "Post-AI Era (2025+)", "expressions": [
{"id": "", "type": "future", "name": "", "mutation": "", "insight": "", "inspirations": [{"source": "", "mechanism": "", "twist": ""}], "children": []}
]}
],
"relatedNeeds": []
}
All keyed by expression ID (or pattern slug / cross-key). Each entry has a timestamp and the framework-specific analysis data. See the corresponding skill files for detailed schemas.
1. Read research/{slug}/runs.json → last entry's "date" field
2. OR: list directories in research/{slug}/, find latest date-formatted dir
3. Fallback: if runs.json doesn't exist, check for flat files (v1 legacy)
For each need in index.json:
1. Get latestRun date from index entry (or resolve as above)
2. Read research/{slug}/{latestRun}/digest.json
3. This gives: scores, verdicts, top mechanisms, top concepts, tags, insights
This is much faster than reading full data files and sufficient for:
When the MCP tool search_research is available:
1. Call search_research(query="trust", need="status", limit=10)
2. Results include: need, runDate, fileType, itemId, title, snippet, tags
3. Use results to locate specific files for deeper reading
When MCP is NOT available, fall back to reading files:
1. For each need, read latest digest.json for tag/theme matching
2. For deeper search, read the specific data files
1. Use MCP find_connections(need_a="status", need_b="belonging") if available
2. OR: Read research/graph.json directly
3. Connections include: shared mechanisms, shared themes, industry overlaps
1. Use MCP get_timeline(need="status") if available
2. OR: Read research/{slug}/runs.json for run list
3. Read digest.json from each run for side-by-side comparison
4. Show: how scores changed, new industries discovered, constraint changes
Search all need.json files → eras[3].expressions and recursively through children. In v2, check the latest run directory first, then older runs if needed.
Lowercase, replace spaces with hyphens, remove special characters.
After any write, recount entries in data files and update index.json. In v2, also update totalRuns, latestRun, latestTopIndustry, and tags.
{slug}-{n} for expressions, {parent-id}-{n} for children, cross-{n} for hybrids.