#include "cli/cli.h" #include "agent/agent.h" #include "agent/exec.h" #include "agent/loop.h" #include "llm/llm.h" #include "version.hpp" #include #include int main(int argc, char** argv){ detz::cli::Parser p; auto cmd = p.parse(argc, argv); if(!cmd.opts.error.empty()){ std::fputs((cmd.opts.error + "\n").c_str(), stderr); return 2; } if(cmd.opts.version){ std::puts(("tai " + std::string(detz::kVersion)).c_str()); return 0; } if(cmd.opts.cap_manifest){ std::fputs("# tai CAP agent manifest\n", stdout); return 0; } if(cmd.name=="run" && !cmd.args.empty()){ detz::agent::ToolRegistry reg; detz::agent::RegisterAll(reg, "."); std::string prompt; for(auto& a: cmd.args) prompt += a + " "; auto r = detz::agent::RunTurn(reg, prompt); std::fputs(r.output.c_str(), stdout); return r.ok?0:1; } return cmd.run(); }