-
Notifications
You must be signed in to change notification settings - Fork 2
Design Concepts
This document explains the architecture and design principles behind Skillful-Alhazen.
The system exists to help you make sense of material, not just store it. This distinction is crucial:
- Collection = passively accumulating information
- Curation = actively interrogating, extracting meaning, building understanding
Every component serves the curation mission. We embody Alhazen's philosophy: be an enemy of all you read.
All skills follow a five-stage workflow:
┌─────────────────────────────────────────────────────────────────────────────┐
│ CURATION WORKFLOW │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ 1. FORAGING 2. INGESTION 3. SENSEMAKING │
│ ┌──────────┐ ┌──────────┐ ┌──────────────┐ │
│ │ Discover │───────▶│ Capture │────────▶│ Claude reads │ │
│ │ sources │ │ raw │ │ & extracts │ │
│ └──────────┘ └──────────┘ └──────────────┘ │
│ │ │ │ │
│ ▼ ▼ ▼ │
│ - URLs - Artifacts - Fragments │
│ - APIs - Provenance - Notes │
│ - Feeds - Timestamps - Relations │
│ │
│ │ │
│ ▼ │
│ 4. ANALYZE/SUMMARIZE 5. REPORT │
│ ┌──────────────────┐ ┌──────────────┐ │
│ │ Reason over many │──────▶│ Dashboard │ │
│ │ notes over time │ │ & answers │ │
│ └──────────────────┘ └──────────────┘ │
│ │ │ │
│ ▼ ▼ │
│ - Synthesis notes - Pipeline views │
│ - Trend analysis - Skills matrix │
│ - Recommendations - Strategic reports │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
| Stage | Purpose | Outputs |
|---|---|---|
| Foraging | Discover sources of information | URLs, API endpoints, feeds |
| Ingestion | Capture raw content with provenance | Artifacts with timestamps and sources |
| Sensemaking | Claude reads and extracts meaning | Fragments, notes, relationships |
| Analysis | Reason over accumulated knowledge | Synthesis notes, gap analysis |
| Reporting | Present actionable insights | Dashboards, answers, recommendations |
A key architectural principle: scripts handle I/O, Claude handles thinking.
- Fetching from APIs (pagination, rate limits, bulk operations)
- Storing raw artifacts with provenance
- TypeDB transactions
- Returning structured data to Claude
- Reading and comprehending content
- Extracting entities and relationships
- Creating structured notes
- Synthesizing across sources
- Recommending actions
This separation:
- Minimizes token usage (scripts do the heavy lifting)
- Maximizes comprehension (Claude focuses on understanding)
- Enables scaling (scripts handle pagination, bulk operations)
You interact through natural conversation. You never:
- Write TypeQL queries
- Call APIs directly
- Manage database transactions
- Navigate file structures
Claude translates your intent into actions, choosing the right skill and executing the appropriate operations.
TypeDB provides a logic-driven knowledge graph. Key properties:
The schema defines the concepts Claude thinks with:
entity collection sub thing;
entity artifact sub thing;
entity fragment sub thing;
entity note sub thing;
relation has-artifact relates owner, relates artifact;
relation has-fragment relates source, relates fragment;
relation annotates relates note, relates subject;
These aren't just storage tables—they're the vocabulary for reasoning about knowledge.
Every piece of knowledge traces back to its source:
Artifact (raw job description)
↓
Fragment (extracted requirement)
↓
Note (your fit analysis)
You can always ask: "Where did this come from?"
Following Richard Sutton's insight: general methods that leverage computation win in the long run.
We don't:
- Over-engineer extraction pipelines
- Hand-code entity recognizers
- Build brittle rule systems
- Require perfect structured input
Instead:
- Let Claude read and comprehend
- Store what Claude extracts
- Query and synthesize
The system improves as Claude improves, without requiring code changes.
Skills are modular domain capabilities. Each skill has:
.claude/skills/<skill-name>/
├── SKILL.md # Instructions for Claude
└── *.py # TypeDB transaction scripts
The core schema defines five entity types:
| Entity | Description | Examples |
|---|---|---|
| Collection | Named group of things | "CRISPR Review", "Q1 Job Hunt" |
| Thing | Any recorded item | Paper, company, position |
| Artifact | Raw captured content | Job description, PDF, API response |
| Fragment | Extracted portion | Requirement, finding, quote |
| Note | Claude's annotation | Fit analysis, research note, strategy |
Domain-specific extensions add specialized types:
-
scilit.tql- Papers, authors, citations -
jobhunt.tql- Positions, companies, skills, requirements
Getting Started
Architecture
Core Skills
Domain Skills
- Skills: Scientific Literature
- Skills: ALG Precision Therapeutics
- Skills: Literature Trends
- Skills: They Said Whaaa
- Skills: DisMech
- Skills: Jobhunt
Links