spinny:~/writing $ less agentic-ai-frameworks-comparison.md
12Oi AI agents echoun metakinithei apo ereynitikes epideixes se systimata paragogis. Perissoteroi apo to 60% ton epicheirisiakon AI efarmogon anamenetai na perilamvanoun agentika stoicheia mechri to 2026. Alla i kataskevi agents apo to miden - diacheirisi vrogchon ergaleion, katastasis, mnimis, diacheirisis sfalmaton kai syntonismou pollalon agents - einai polyploki. Edoo mpainoun ta frameworks.34Tessera frameworks kyrarchoun to 2026: **LangGraph**, **CrewAI**, **OpenAI Agents SDK** kai **Claude Agent SDK**. Kathena proseggizei to idio provlima me themeliodoos diaforetiko tropo: na dosei sta LLM tin ikanotita na skeftontai, na schedkazoun, na chrisimopoioun ergaleia kai na synergazontai.56## Me mia matia78| Opseis | LangGraph | CrewAI | OpenAI Agents SDK | Claude Agent SDK |9|--------|-----------|--------|-------------------|-----------------|10| **Dimioyrgos** | LangChain | CrewAI Inc. | OpenAI | Anthropic |11| **Architektoniki** | Vasismeni se grafous | Vasismeni se rolous | Vasismeni se paradoseis | Aftonomi vrogchos |12| **Filosofia** | Megistos elegchos | Omadiki synergasia | Elachisti afairesi | Dose ston agent enan ypologisti |13| **Glosses** | Python, TypeScript | Python | Python | Python, TypeScript |14| **Ypostirixi montelon** | Opoiodipote (OpenAI, Claude, topiko) | Opoiodipote | Opoiodipote (para to onoma) | Mono Claude |15| **GitHub stars** | ~29k | ~40k | ~21k | ~6k |16| **Kalytero gia** | Polyploka stateful workflows | Ekseidikeysi pollalon agents | Routing kai triaz | Kodika kai ergasies me archeia |1718## LangGraph: O kataskevastis grafon1920To LangGraph montelopoiei ta workflows ton agents os **kateythynomena kyklika grafa**. Orizete komvous (synartiseis pou ekteloun ergasia) kai akmes (metavaseis metaxy tous, proairetika me synthikes). I katastasi reei mesa apo to grafo kai diatireitai meso checkpointing.2122Afto einai to pio safes kai elegchomeno framework - syndeete kathe vima monoi sas.2324```mermaid25graph LR26 Start --> Router[Router Node]27 Router -->|needs research| Research[Research Node]28 Router -->|needs code| Code[Code Node]29 Research --> Synthesize[Synthesize Node]30 Code --> Synthesize31 Synthesize --> End32```3334### Vasikes ennoies3536- **StateGraph**: o orismos tou grafou me typopoiimeni katastasi37- **Nodes**: synartiseis Python pou metaschimatizoun tin katastasi38- **Edges**: syndesmoi metaxy komvon, mporoun na einai me synthiki39- **Checkpointing**: ensoomatomeni monimotita gia makrochrones roes ergasias4041### Paradeigma kodika4243```python44from langgraph.graph import StateGraph, MessagesState, START, END45from langchain_openai import ChatOpenAI4647llm = ChatOpenAI(model="gpt-4o")4849def call_agent(state: MessagesState):50 response = llm.invoke(state["messages"])51 return {"messages": [response]}5253def should_continue(state: MessagesState):54 last = state["messages"][-1]55 if last.tool_calls:56 return "tools"57 return END5859def call_tools(state: MessagesState):60 # Execute tool calls and return results61 results = []62 for tool_call in state["messages"][-1].tool_calls:63 result = execute_tool(tool_call)64 results.append(result)65 return {"messages": results}6667graph = StateGraph(MessagesState)68graph.add_node("agent", call_agent)69graph.add_node("tools", call_tools)70graph.add_edge(START, "agent")71graph.add_conditional_edges("agent", should_continue, {"tools": "tools", END: END})72graph.add_edge("tools", "agent")7374app = graph.compile()75result = app.invoke({"messages": [{"role": "user", "content": "What's the weather?"}]})76```7778### Dynata simeia7980- Leptoereis elegchos kathe vimatos kai metavasis81- Ensoomatomeno checkpointing kai human-in-the-loop82- Pliri isotimia me TypeScript83- Leitoyrgei me opoiondipote parocho LLM84- Kalytero gia polyplokes roes ergasias me synthiki diaklandosi kai vrogchous8586### Adynamies8788- Apotomi kampyli mathisis - prepei na katanoite ennoies theorias grafon89- Analytiko gia aples periptoseis - enas vasikos agent apaite perissotero boilerplate apo alla frameworks90- I aposfalmotosi roon grafon mporei na einai dyskoli choris to LangSmith9192### Timologisi9394Open-source (MIT). To LangSmith (diacheirizomeni platforma paratirisimotitas) echei epiploches vathmides gia paragoigki parakolouthisi.9596## CrewAI: O dimiourgos omadas9798To CrewAI chrisimopoiei mia anthropini metafora: synthetete ena **pliroma** apo ekseidikeymenous agents, kathenas me enan **rolo**, enan **stocho** kai mia **istoria**. Oi agents synergaaontai se **ergasies** chrisimopoiontas **ergaleia**, syntonismenoi apo mia **diadikasia** (seiariaki, ierarchiki i synthesigmatiki).99100Skeftite to san na prosthenete mia omada opou kathe melos echei sygekkrimeno titlo kai eidikotita.101102```mermaid103graph TD104 Crew[Crew Manager] --> R[Researcher\nRole: Find data\nTools: WebSearch]105 Crew --> W[Writer\nRole: Write content\nTools: FileWrite]106 Crew --> E[Editor\nRole: Review quality\nTools: FileRead]107 R --> Task1[Research Task]108 W --> Task2[Writing Task]109 E --> Task3[Review Task]110 Task1 --> Task2 --> Task3111```112113### Vasikes ennoies114115- **Agent**: mia persona me rolo, stocho, istoria kai ergaleia116- **Task**: mia anathesi me perigrafi, anammenomeno apotelesma kai anatetheimeno agent117- **Crew**: mia omada agent pou ergaazontai mazi118- **Process**: stratigiki ektelesis (seiariaki, ierarchiki, synthesigmatiki)119- **Flow**: epipedo orchestration vasismeno se gegonota gia ti syndesi pollalon pliromaton120121### Paradeigma kodika122123```python124from crewai import Agent, Task, Crew, Process125126researcher = Agent(127 role="Senior Research Analyst",128 goal="Find comprehensive data about the given topic",129 backstory="You have 10 years of experience in technology research. "130 "You are thorough and always verify facts from multiple sources.",131 tools=[web_search_tool],132 verbose=True,133)134135writer = Agent(136 role="Technical Writer",137 goal="Create clear, engaging technical content",138 backstory="You write for a developer audience. "139 "Your articles are practical and include code examples.",140 tools=[file_tool],141 verbose=True,142)143144research_task = Task(145 description="Research the latest developments in WebAssembly in 2026. "146 "Focus on WASI, Component Model, and production use cases.",147 expected_output="A structured research document with key findings and sources.",148 agent=researcher,149)150151writing_task = Task(152 description="Write a blog post based on the research. "153 "Include code examples and Mermaid diagrams.",154 expected_output="A complete blog post in Markdown format.",155 agent=writer,156 context=[research_task], # Writer receives researcher's output157)158159crew = Crew(160 agents=[researcher, writer],161 tasks=[research_task, writing_task],162 process=Process.sequential,163 verbose=True,164)165166result = crew.kickoff()167print(result.raw)168```169170### Dynata simeia171172- Diaisthitiki afairesi vasismeni se rolous - eykoli stin katanoisi173- Pano apo 100 ensoomatomenees entaxis ergaleion174- Koinochroni mnimi metaxy ton agents (vrachyprothesmi, makroprthesmi, onotitas)175- Megaliteri koinotita (~40k GitHub stars)176- Ierarchiki diadikasia me enan agent "diacheiristi" pou anathete kai epikyroni177178### Adynamies179180- Ligotero leptoereis elegchos apo to LangGraph - orizete rolous, ochi akriveis diadirmes ektelesis181- I ierarchiki diadikasia mporei na einai aprobleepti otan oi agents diafounoun182- I aposfalmotosi synomilion pollalon agents einai dyskoloteri apo roes enos agent183184### Timologisi185186Open-source pyriinas (dorean). CrewAI Platform: 99 $/mina (Teams) eos 120 chil. $/etos (Enterprise). I timologisi vasizetai se energa pliromata kai miniaia ekteleseis.187188## OpenAI Agents SDK: O router189190To OpenAI Agents SDK (pnevmatikos diadochos tou Swarm) epikentroonetai stis **paradoseis** - oi agents metaferoun synomilies se allous ekseidikeymenous agents. Einai to pio minimalistiko framework: agents, ergaleia, paradoseis kai guardrails. Aftoo einai ola.191192```mermaid193graph LR194 User --> Triage[Triage Agent]195 Triage -->|billing question| Billing[Billing Agent]196 Triage -->|refund request| Refund[Refund Agent]197 Triage -->|technical issue| Support[Support Agent]198 Billing --> Response[Response]199 Refund --> Response200 Support --> Response201```202203### Vasikes ennoies204205- **Agent**: modelo + odigies + ergaleia + paradoseis206- **Handoff**: mia metafora se allon agent (montelopoiimeni os ergaleio pou to LLM mporei na kalesei)207- **Guardrail**: epikyrosi eisodou/exodou pou ekteleitai parallila me ton agent208- **Runner**: ektelei ti vrogcho tou agent209- **Tracing**: ensoomatommeni paratirisimotita gia oles tis kliseis LLM, chrisis ergaleion kai paradoseis210211### Paradeigma kodika212213```python214from agents import Agent, Runner, handoff, InputGuardrail, GuardrailFunctionOutput215from pydantic import BaseModel216217class SafetyCheck(BaseModel):218 is_safe: bool219 reason: str220221async def content_safety(ctx, agent, input_text):222 result = await Runner.run(223 Agent(name="Safety", instructions="Check if input is safe. No PII."),224 input_text,225 context=ctx,226 )227 output = SafetyCheck.model_validate_json(result.final_output)228 return GuardrailFunctionOutput(229 output_info=output, tripwire_triggered=not output.is_safe230 )231232billing_agent = Agent(233 name="Billing Agent",234 instructions="You handle billing inquiries. Be precise with numbers.",235 tools=[lookup_invoice, process_payment],236)237238refund_agent = Agent(239 name="Refund Agent",240 instructions="You process refund requests. Always verify the order first.",241 tools=[lookup_order, issue_refund],242)243244triage_agent = Agent(245 name="Triage Agent",246 instructions="Route the customer to the right specialist. "247 "Ask clarifying questions if needed.",248 handoffs=[billing_agent, refund_agent],249 input_guardrails=[InputGuardrail(guardrail_function=content_safety)],250)251252result = await Runner.run(triage_agent, "I need a refund for order #4521")253print(result.final_output)254# The triage agent routes to refund_agent, which processes the refund255```256257### Dynata simeia258259- Katharo montelo paradosis - fysiko gia workflows routing/triaz260- Ta guardrails ektelountai parallila me tin ektelesi (fail-fast, mi-mplokariistika)261- Ensoomatommeno panel tracing gia aposfalmotosi262- Para to onoma, ypostiri modela ektos OpenAI263- Elachisti afairesi - eykolo na katanoithei kai na epektathei264265### Adynamies266267- Ligotero orimi diacheirisi katastasis apo to LangGraph268- Kamia ensoomatommeni monimotita i checkpointing269- To oikosystima ergaleion triton einai mikrotero270- I schedkiasi me epikentro tis paradoseis mporei na min tairiazei se kathe architektoniki271272### Timologisi273274Open-source (MIT). Plirnete ana token gia opoiodipote modelo chrisimooieitee.275276## Claude Agent SDK: O programmatistis277278To Claude Agent SDK akolouthei mia diaforetiki proseggisi: anti na orizete workflows i rolous, dinete ston agent ena **set ergaleion kai ton afinete na vrei monos tou pos na oloklirosi tin ergasia**. Chrisimopoiei tin idia aftonomi vrogcho pou trofodioti to Claude Code - diavase, drase, epiviose, epanalav.279280```mermaid281graph TD282 Prompt[User Prompt] --> Loop[Autonomous Agent Loop]283 Loop --> Reason[Reason about next step]284 Reason --> Act[Execute tool]285 Act --> Verify[Check result]286 Verify -->|not done| Loop287 Verify -->|done| Output[Final output]288```289290### Vasikes ennoies291292- **query()**: to kyrio simeio eisodou pou xekina ti vrogcho tou agent293- **Ensoomatomena ergaleia**: Read, Write, Edit, Bash, Glob, Grep, WebSearch, WebFetch294- **Prosarmosmena ergaleia meso MCP**: orismos ergaleion os in-process MCP servers295- **Sub-agents**: ekseidikeymenoi agents stous opoious o gonikos mporei na anathesi296- **Sessions**: diatirisi plaissiou se polles allilepidrasis297298### Paradeigma kodika299300```typescript301import { tool, createSdkMcpServer, query } from "@anthropic-ai/claude-agent-sdk";302import { z } from "zod";303304const searchDocs = tool(305 "search_docs",306 "Search the internal documentation for relevant information",307 { query: z.string().describe("Search query") },308 async ({ query }) => {309 const results = await vectorStore.similaritySearch(query, 5);310 return {311 content: [{ type: "text", text: results.map(r => r.pageContent).join("\n\n") }],312 };313 }314);315316const docsServer = createSdkMcpServer({317 name: "docs",318 version: "1.0.0",319 tools: [searchDocs],320});321322for await (const message of query({323 prompt: "Find how authentication works in our system and write a summary",324 options: {325 mcpServers: { docs: docsServer },326 allowedTools: ["Read", "Glob", "Grep", "mcp__docs__search_docs"],327 },328})) {329 if (message.type === "result" && message.subtype === "success") {330 console.log(message.result);331 }332}333```334335### Dynata simeia336337- Protis taxis entaxi MCP - syndethite me opoiodipote oikosystima MCP servers338- Ensoomatomena ergaleia gia leitourgies archion, terminal kai prosvasi sto diadiktyo339- Aftomati sympyknosi plaisiou gia megales vaseis kodika340- Paralliloi sub-agents gia polyplokes ergasies341- Idia michani me to Claude Code - dokimasmeni se pragmatikes roes ergasias anaptixi342343### Adynamies344345- Mono modela Claude - kamia ypostirixi pollon parochon346- Neotero framework me mikroteri koinotita347- Apaite periballon Node.js akomi kai gia to Python SDK348- Ligoteros safis elegchos workflow se sygkrisi me to LangGraph349350### Timologisi351352Open-source. Kanoniki timi token Claude API. Managed Agents (filoxenoumeni ekdosi): 0,08 $ ana ora synedriias prostheta apo ta kosti token.353354## Pote na epilexete poio355356```mermaid357graph TD358 Start{What's your priority?}359 Start -->|Full control over workflow| LG[LangGraph]360 Start -->|Multi-agent collaboration| CA[CrewAI]361 Start -->|Routing and triage| OA[OpenAI Agents SDK]362 Start -->|Coding and file automation| CS[Claude Agent SDK]363364 LG --> LGU[Complex stateful workflows\nConditional branching\nHuman-in-the-loop]365 CA --> CAU[Team of specialized agents\nResearch + writing pipelines\nContent generation]366 OA --> OAU[Customer service routing\nMulti-step handoffs\nInput validation]367 CS --> CSU[Code generation and review\nFile-heavy automation\nMCP tool ecosystem]368```369370### Epilexte LangGraph an:371- Chriazeste akrivii elegcho se kathe vima tis rois ergasias372- I periptosi chrisis sas perilamvanei polyploki synthiki logiki kai vrogchous373- Thelete ensoomatommeni monimotita kai checkpoints human-in-the-loop374- Chriazeste na chrisimopoiisete pollous parochous LLM stin idia roi ergasias375376### Epilexte CrewAI an:377- Thelete mia diaisthitiki afairesi vasismeni se rolous378- I ergasia sas perilamvanei pollous agents me diaforetikes eidikotites379- Chriazeste oi agents na synergaaontai kai na pernnoun plaisio metaxy tous380- Ektimate ti megaliteri koinotita kai tis perisoteres ensoomatommenes entaxis381382### Epilexte OpenAI Agents SDK an:383- To kyrio montelo sas einai i drromologisi synomilion se eidikous384- Chriazeste guardrails pou epikyrounoun eisodo/exodo parallila385- Thelete tin aploysteni dynati afairesi me elachisto boilerplate386- To ensoomatommeno tracing kai i paratirisimotita einai simantika387388### Epilexte Claude Agent SDK an:389- Oi agents sas prepei na diavazoun, grafoun kai ekteloun kodika390- Thelete protis taxis entaxi me MCP servers391- Chriazeste aftonomous agents pou epanalamvanoun kai aftodiiorthonontai392- Idi chrisimopoieite to Claude kai thelete tin vathyteri entaxi393394## Mporun na syndyastoun ta frameworks?395396Nai. Ena synitho montelo einai i chrisi enos framework gia tin orchestration kai enos allou gia tos monadikous agents:397398- **LangGraph** gia to synoliko grafo rois ergasias399- **CrewAI** gia ena sykekkrimeno komvo pou apaite synergasia pollalon agents400- **Claude Agent SDK** gia ypo-ergasies schetikes me kodika meso MCP401- **OpenAI Agents SDK** gia triaz kai routing pros tous pelates402403Ta frameworks den einai amoimaia apokleiomena. Chrisimopoiiste oti tairiazei se kathe meros tou systimatos sas.404405## Symperasma406407Kathe framework kanei mia safii epilogi:408409- **LangGraph** veltiopolitei gia elegcho - eseis apofasizete gia kathe metavasi410- **CrewAI** veltiopolitei gia synergasia - oi agents ergaazontai os omada411- **OpenAI Agents SDK** veltiopolitei gia aplotita - elachisti afairesi, kathares paradoseis412- **Claude Agent SDK** veltiopolitei gia aftonomia - doste tou ergaleia kai afiste ton na douleepsi413414I sosti epiloyi exartatai apo ti roi ergasias sas, tin omada sas kai to yparcho stack sas. Dialexte afto pou tairiazei stin kyria periptosi chrisis sas, mathete to kala kai travaaxte ta alla otan ftasete sto dynato tous simeio.415
:Sygkrisi Agentic AI Frameworks: LangGraph vs CrewAI vs OpenAI Agents SDK vs Claude Agent SDKlines 1-415 (END) — press q to close