Show HN: Kastor – Terraform-style specs for AI agents

29 points by weirdguy 3 hours ago on hackernews | 15 comments

[OP] weirdguy | 2 hours ago

hey HN, it's first time posting something here.

I’m building Kastor: Go CLI/declarative language/config for AI agents.

the motivation: agent definitions often end up spread across framework code, prompt files, tool files/mcps, platform UI settings, and env vars. that makes them hard to review, diff, reproduce or move.

Kastor is an attempt to put a source-of-truth layer above that.

right now the working proof of concept is narrow:

- .agent / .tool / .prompt files - HCL parser + validation - dependency/reference checks - LangGraph codegen - runnable weather example - runnable content scheduler example

the long-term direction is Terraform-ish:

- build: compile to framework code - plan/apply: reconcile hosted platform agents - state: track remote resources and detect drift

I’m deliberately not trying to build another agent runtime. the thing I’m trying to validate is whether agents need something closer to IaC: versionable, reviewable, declarative source of truth.

would appreciate any kind of feedback, especially on the language/design.

handfuloflight | 2 hours ago

The website is down?

[OP] weirdguy | 2 hours ago

oh, it's not, just root domain (non-www) without redirect

handfuloflight | 2 hours ago

That's not working either.

[OP] weirdguy | 2 hours ago

try with www, should work, the apex zone still did not propagate for whatever reason

handfuloflight | an hour ago

Works now.

Leewen | 2 hours ago

works for me. terraform for agents? neat

[OP] weirdguy | 2 hours ago

thanks — that’s the direction. current version is still just validate + LangGraph codegen, but plan/apply/state is the part I’m trying to get to next

Leewen | an hour ago

GL

empath75 | 2 hours ago

The problem right now with something like this is you're trying to nail jello to a wall. People haven't figured out what an agent is yet, and trying to crystalize what people happen to be doing right now means in a few months, you're going to be obsolete.

[OP] weirdguy | 2 hours ago

I agree with you

don't think the "agent" abstraction is stable enough to standardize the behavior/runtime layer yet.

thing I'm trying to test is smaller: is that possible to standardize the outer contract around agents?

what inputs does it accept? what outputs does it promise? what model does it use? what prompt/template does it depend on? what tools can it call? what target should it be built or applied to?

so here it is intentionally not trying to describe the full control loop or become a runtime. it's more like a source-of-truth layer for the parts that are already showing up everywhere, even if the runtime patterns keep changing underneath.

I might be wrong, but my bet is that the runtime layer will keep changing, while the need for reviewable/diffable agent contracts will not.

reactordev | 2 hours ago

You mean Claude…

giancarlostoro | 59 minutes ago

Claude is a model, an agent is more like the full solution. Some would call Claude Code itself an agent. Agents do things, models are just models until you use them.

reactordev | 24 minutes ago

What are you going on about? I was saying that they didn’t write any code it was all Claude. Obviously using Claude code.

giancarlostoro | 14 minutes ago

The post you replied about is regarding people not knowing what "agent" means, but you also wrote very little, so its hard to gauge what your angle was. Not sure why it was downvoted.