ArchitecturePerception

Perception

The perception layer is where Syke pushes the boundaries of what’s possible with the Agent SDK. Three modes, one output schema.

Agentic Perception (Default)

The agent explores — it doesn’t receive a text dump. Six custom MCP tools let it browse timelines, search across platforms, cross-reference topics, read its own prior profiles, and submit structured output.

Agent SDK + Custom MCP Tools

agent = Agent(
    model="claude-opus-4-6",
    tools=perception_tools,       # 6 MCP tools
    hooks=CoverageHooks(tracker), # PreToolUse coverage gate
    system_prompt=PERCEPTION_SYSTEM_PROMPT,
)
result = await agent.run(task_prompt)
đź’ˇ

Active exploration, not passive processing. The agent typically makes 5-12 targeted tool calls, forming hypotheses and testing them. It searches for a concept, discovers connections across platforms, and follows the thread. This is fundamentally different from dumping 100K tokens into a context window.

Coverage Gating (PermissionResultDeny)

The Agent SDK’s hook system enforces exploration quality. A PreToolUse hook tracks which sources the agent has browsed, searched, and cross-referenced.

class CoverageHooks:
    async def on_pre_tool_use(self, tool_name, tool_input):
        if tool_name == "submit_profile":
            coverage = self.tracker.get_coverage()
            if not coverage.all_sources_explored():
                return PermissionResultDeny(
                    reason=f"Sources not explored: {coverage.missing}. "
                    "Explore first, then resubmit."
                )

The agent literally cannot submit a shallow profile. Zero extra API cost — hooks piggyback on existing turns.

Multi-Agent Orchestration

Three Sonnet sub-agents explore in parallel:

Each sub-agent has constrained tool access via Agent SDK’s AgentDefinition. Results are aggregated and Opus synthesizes the final profile.

Strategy Evolution (ALMA)

This is the technical crown jewel. Inspired by the ALMA paper (Clune, 2026) — the agent evolves its own exploration strategy across runs.

Explore

Agent runs perception, leaving a trace of every tool call and result.

Trace

Record which searches returned useful results — cross-platform hits, novel discoveries, dead ends.

Reflect

Deterministic analysis labels each search as productive or wasted. Zero LLM cost — pure heuristics.

Evolve

Productive queries promoted, dead ends culled, new priorities discovered. The strategy file is updated.

Key discovery. Searching for concepts beats searching for project names. “memory” appears across ChatGPT research, Claude Code sessions, and GitHub commits — while “Syke” only appears where the project is explicitly named. The agent learned this itself.

12 runs. Real data. The system learned.

StrategyRunsKey DiscoveryBest Run
v0 (baseline)1-3Project names: Syke, Pogu89.9%
v1 (concepts)4-6Concepts beat names: memory, federated94.3%
v2 (entities)7-9People and handles: wizard, Persona88.1%
v3 (refined)10-12Refined ranking, new keywords88.7%

Scores are per-run peaks from evaluations.json. Run-to-run variance is significant because search result quality depends on which keywords the agent tries first.

Total cost: $8.07 across 12 runs. Peak quality at $0.60/run — 67% cheaper than the $1.80 legacy baseline. Each run makes the next one better.

Extended Thinking

16K+ token thinking budget lets Opus cross-reference signals deeply before synthesizing. The agent uses thinking to connect patterns across platforms — a GitHub commit, a ChatGPT thread, and an email about the same topic get woven into one coherent thread.

Benchmarks

LegacyAgentic v1Multi-Agent v2Meta-Best
Cost$1.80$0.71$1.04$0.60
Eval score———94.3%
Source coverage100%67%100%100%*
Cross-platform threads2124
Wall time119s160s225s189s