What building Shippy taught us about building agents
Ai2 shares lessons from building Shippy, a maritime AI agent, emphasizing that in high-stakes domains, reliability matters more than the model itself, and demonstrating an architecture of 'soul, skills, config' for verifiable, maintainable agent systems.
- Decompose the agent into 'soul' (system prompt), 'skills' (Markdown-defined capabilities), and 'config' (runtime settings) for modularity and maintainability.
- In high-stakes domains, the core challenge is not model capability but ensuring outputs are trustworthy, verifiable, and connected to live data.
- Skills follow the same agent-skills spec used by tools like Claude Code, enabling version control and collaborative iteration.
- Treating model and framework as configuration items allows swapping without rebuilding, increasing experimentation flexibility.
The Hook: When 智能体s Leave the Demo Stage
The AI world is buzzing about agents, but most demos remain in low-stakes territory: writing a snippet of code, booking a flight. Mistakes are annoying but not dangerous. What happens when an agent is tasked with detecting illegal fishing and directing patrol vessels? A wrong answer wastes scarce resources and puts people at risk.
That’s the reality faced by the Skylight team at Ai2 (Allen Institute for AI). They recently shared the engineering story behind Shippy, an AI agent for maritime domain awareness. The lesson? In high-stakes environments, reliability isn’t about the model—it’s about the system around it.
Deconstructing the 智能体: Soul, Skills, Config
The team thinks of an agent as three composable parts. This mental model is itself a valuable takeaway.
- Soul: The system prompt, but it goes beyond personality. It establishes Shippy’s professional boundaries: what it should answer, what it shouldn’t, and when it must say “I don’t know.” It’s like an ethical framework that prevents the agent from hallucinating in critical moments.
- Skills: Each skill is a Markdown file following the agent-skills spec (the same used by tools like Claude Code), with structured frontmatter. Shippy’s skills include querying the Skylight API for vessel events and data, looking up maritime boundaries, interpreting vessel tracks, and generating interactive map links. These skills are essentially packaged workflows that turn complex, real-time API interactions into actions the agent can invoke.
- Config: Everything else at runtime: the agent harness (OpenClaw, their open-source framework), the language model (currently Claude Opus 4.6), and secrets injected at runtime. Crucially, switching models or frameworks is a config change, not a rebuild. This makes experimentation incredibly agile.
This separation means the soul and skills are baked into a versioned Docker image, while config floats free. It’s a clean way to manage agent behavior like code while keeping the underlying engine swappable.
But architecture only gets you so far. What makes Shippy ready for maritime work is its obsession with trustworthiness. Every answer comes with its “work shown”: the data source, the cutoff time, the query timestamp, and a deep link to verify the numbers on the Skylight map. In agent design, verifiability beats out raw accuracy gains. And because Shippy connects to continuously updated satellite and vessel signals—not a static database—its skills are built to handle live data queries.
Trend: From “Model as Product” to “Engineered 智能体s”
Shippy’s story points to a broader shift: agent development is moving from monolithic prompts to modular, composable engineering. The adoption of the agent-skills spec (especially in the Claude Code ecosystem) signals an emerging consensus—skills should be version-controlled documents, not hidden logic. Markdown might just become the configuration language for agent behavior.
Another trend: in high-value domains, the model’s role is being redefined. Shippy treats the model as a replaceable component, not the product. The real moat is the system architecture, data integration, and domain expertise. For enterprises building AI applications, the message is clear: don’t build around a specific model; build a system that can leverage any model’s strengths.
Practical Takeaways: What You Can Steal
For agent developers, a few actionable principles:
- Decouple: Manage persona, skills, and runtime config separately. Write skills as structured Markdown files for versioning and teamwork.
- Design for verifiability: Make agents show their work—sources, timestamps, external tool links. In critical tasks, being able to verify trumps everything.
- Model as config, not crown jewels: Use config files to swap models, keeping your architecture vendor-agnostic and future-proof.
For decision-makers evaluating agent projects, ask three questions: Are the skills explainable and well-defined? How is accuracy and data freshness guaranteed? Can the underlying model be swapped easily? Shippy offers a useful reference.
Surprise: The Fanciest Model Isn’t Your Core Advantage
It’s tempting to think that high-stakes agents demand the most powerful model. But Shippy’s team shows that the real work is in system design and data integration. The model can be swapped; the crafted skills, the live data connections, and the verifiability mechanisms are the real product. Moreover, their choice to open-source the OpenClaw harness suggests that even in critical applications, open tools can carry the weight—no need for proprietary lock-in.
Shippy is still evolving, but its message is timely: as agents step out of demos and into complex, consequential decisions, engineering discipline matters more than parameter counts. Perhaps we should spend less time talking about AGI and more time making agents we can actually trust in the real world.
Analysis by BitByAI · Read original