LICENSE
README.md
pyproject.toml
examples/__init__.py
examples/a2a_grpc_server/flow.py
examples/controller_multihop/__init__.py
examples/controller_multihop/flow.py
examples/fanout_join/__init__.py
examples/fanout_join/flow.py
examples/guardrails/huggingface/flow.py
examples/guardrails/huggingface/rule.py
examples/guardrails/scope_classifier/flow.py
examples/guardrails/scope_classifier/rule.py
examples/guardrails/scope_classifier/train_classifier.py
examples/map_concurrent/__init__.py
examples/map_concurrent/flow.py
examples/memory_basic/__init__.py
examples/memory_basic/flow.py
examples/memory_callbacks/__init__.py
examples/memory_callbacks/flow.py
examples/memory_custom/__init__.py
examples/memory_custom/flow.py
examples/memory_persistence/__init__.py
examples/memory_persistence/flow.py
examples/memory_redis/__init__.py
examples/memory_redis/flow.py
examples/memory_truncation/__init__.py
examples/memory_truncation/flow.py
examples/metadata_propagation/flow.py
examples/mlflow_metrics/__init__.py
examples/mlflow_metrics/flow.py
examples/planner_enterprise_agent/__init__.py
examples/planner_enterprise_agent/config.py
examples/planner_enterprise_agent/main.py
examples/planner_enterprise_agent/nodes.py
examples/planner_enterprise_agent/telemetry.py
examples/planner_enterprise_agent_v2/__init__.py
examples/planner_enterprise_agent_v2/config.py
examples/planner_enterprise_agent_v2/main.py
examples/planner_enterprise_agent_v2/nodes.py
examples/planner_enterprise_agent_v2/telemetry.py
examples/playbook_retrieval/__init__.py
examples/playbook_retrieval/flow.py
examples/policy_filtering/main.py
examples/quickstart/__init__.py
examples/quickstart/flow.py
examples/react_memory_context/main.py
examples/react_minimal/main.py
examples/react_parallel/main.py
examples/react_parallel_join/__init__.py
examples/react_parallel_join/main.py
examples/react_pause_resume/main.py
examples/react_replan/main.py
examples/react_typed_tools/__init__.py
examples/react_typed_tools/main.py
examples/reliability_middleware/__init__.py
examples/reliability_middleware/flow.py
examples/roadmap_status_updates/__init__.py
examples/roadmap_status_updates/flow.py
examples/roadmap_status_updates_subflows/__init__.py
examples/roadmap_status_updates_subflows/flow.py
examples/routing_policy/__init__.py
examples/routing_policy/flow.py
examples/routing_predicate/__init__.py
examples/routing_predicate/flow.py
examples/routing_union/__init__.py
examples/routing_union/flow.py
examples/routing_with_playbooks/__init__.py
examples/routing_with_playbooks/flow.py
examples/status_roadmap_flow/__init__.py
examples/status_roadmap_flow/flow.py
examples/streaming_llm/__init__.py
examples/streaming_llm/flow.py
examples/streaming_llm/stream_answer.py
examples/testkit_demo/flow.py
examples/toolnode_presets/flow.py
examples/toolnode_utcp_echo/flow.py
examples/trace_cancel/flow.py
examples/traceable_errors/flow.py
examples/visualizer/flow.py
examples/web_tools/flow.py
penguiflow/__init__.py
penguiflow/admin.py
penguiflow/artifacts.py
penguiflow/bus.py
penguiflow/catalog.py
penguiflow/core.py
penguiflow/debug.py
penguiflow/errors.py
penguiflow/logging.py
penguiflow/metrics.py
penguiflow/middlewares.py
penguiflow/node.py
penguiflow/patterns.py
penguiflow/policies.py
penguiflow/registry.py
penguiflow/remote.py
penguiflow/streaming.py
penguiflow/testkit.py
penguiflow/types.py
penguiflow/viz.py
penguiflow.egg-info/PKG-INFO
penguiflow.egg-info/SOURCES.txt
penguiflow.egg-info/dependency_links.txt
penguiflow.egg-info/entry_points.txt
penguiflow.egg-info/requires.txt
penguiflow.egg-info/top_level.txt
penguiflow/agui_adapter/__init__.py
penguiflow/agui_adapter/base.py
penguiflow/agui_adapter/fastapi.py
penguiflow/agui_adapter/penguiflow.py
penguiflow/cli/__init__.py
penguiflow/cli/dev.py
penguiflow/cli/generate.py
penguiflow/cli/init.py
penguiflow/cli/main.py
penguiflow/cli/new.py
penguiflow/cli/playground.py
penguiflow/cli/playground_sse.py
penguiflow/cli/playground_state.py
penguiflow/cli/playground_wrapper.py
penguiflow/cli/spec.py
penguiflow/cli/spec_errors.py
penguiflow/cli/tools.py
penguiflow/cli/playground_ui/dist/index.html
penguiflow/cli/playground_ui/dist/vite.svg
penguiflow/cli/playground_ui/dist/assets/Accordion-B_Kwl75I.js
penguiflow/cli/playground_ui/dist/assets/Accordion-C2YHGqpl.css
penguiflow/cli/playground_ui/dist/assets/Callout-CN0DT7Se.css
penguiflow/cli/playground_ui/dist/assets/Callout-CkcYEmrR.js
penguiflow/cli/playground_ui/dist/assets/Code-CS6X8G3Y.css
penguiflow/cli/playground_ui/dist/assets/Code-FYnsDEPi.js
penguiflow/cli/playground_ui/dist/assets/Confirm-CL2pZPNu.css
penguiflow/cli/playground_ui/dist/assets/Confirm-DRd0YBYW.js
penguiflow/cli/playground_ui/dist/assets/DataGrid-CQ16ixVu.js
penguiflow/cli/playground_ui/dist/assets/DataGrid-DURPqRMT.css
penguiflow/cli/playground_ui/dist/assets/ECharts-C5sKroyE.js
penguiflow/cli/playground_ui/dist/assets/ECharts-SUlEdAZf.css
penguiflow/cli/playground_ui/dist/assets/Embed-Cj0Kxbmy.js
penguiflow/cli/playground_ui/dist/assets/Embed-fxz_xzQf.css
penguiflow/cli/playground_ui/dist/assets/Form-CiyTMQOC.js
penguiflow/cli/playground_ui/dist/assets/Form-eWoJO6O2.css
penguiflow/cli/playground_ui/dist/assets/Grid-CDt4yLh-.js
penguiflow/cli/playground_ui/dist/assets/Grid-Dxm5Yv8q.css
penguiflow/cli/playground_ui/dist/assets/Html-CBo-9Zlq.css
penguiflow/cli/playground_ui/dist/assets/Html-CrKVh34M.js
penguiflow/cli/playground_ui/dist/assets/Image-CWXsbpMg.js
penguiflow/cli/playground_ui/dist/assets/Image-CbfbhndX.css
penguiflow/cli/playground_ui/dist/assets/Json-DLjtSoAh.css
penguiflow/cli/playground_ui/dist/assets/Json-gHWMKVD8.js
penguiflow/cli/playground_ui/dist/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2
penguiflow/cli/playground_ui/dist/assets/KaTeX_AMS-Regular-DMm9YOAa.woff
penguiflow/cli/playground_ui/dist/assets/KaTeX_AMS-Regular-DRggAlZN.ttf
penguiflow/cli/playground_ui/dist/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf
penguiflow/cli/playground_ui/dist/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff
penguiflow/cli/playground_ui/dist/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2
penguiflow/cli/playground_ui/dist/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff
penguiflow/cli/playground_ui/dist/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2
penguiflow/cli/playground_ui/dist/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf
penguiflow/cli/playground_ui/dist/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf
penguiflow/cli/playground_ui/dist/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff
penguiflow/cli/playground_ui/dist/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2
penguiflow/cli/playground_ui/dist/assets/KaTeX_Fraktur-Regular-CB_wures.ttf
penguiflow/cli/playground_ui/dist/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2
penguiflow/cli/playground_ui/dist/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff
penguiflow/cli/playground_ui/dist/assets/KaTeX_Main-Bold-Cx986IdX.woff2
penguiflow/cli/playground_ui/dist/assets/KaTeX_Main-Bold-Jm3AIy58.woff
penguiflow/cli/playground_ui/dist/assets/KaTeX_Main-Bold-waoOVXN0.ttf
penguiflow/cli/playground_ui/dist/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2
penguiflow/cli/playground_ui/dist/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf
penguiflow/cli/playground_ui/dist/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff
penguiflow/cli/playground_ui/dist/assets/KaTeX_Main-Italic-3WenGoN9.ttf
penguiflow/cli/playground_ui/dist/assets/KaTeX_Main-Italic-BMLOBm91.woff
penguiflow/cli/playground_ui/dist/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2
penguiflow/cli/playground_ui/dist/assets/KaTeX_Main-Regular-B22Nviop.woff2
penguiflow/cli/playground_ui/dist/assets/KaTeX_Main-Regular-Dr94JaBh.woff
penguiflow/cli/playground_ui/dist/assets/KaTeX_Main-Regular-ypZvNtVU.ttf
penguiflow/cli/playground_ui/dist/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf
penguiflow/cli/playground_ui/dist/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2
penguiflow/cli/playground_ui/dist/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff
penguiflow/cli/playground_ui/dist/assets/KaTeX_Math-Italic-DA0__PXp.woff
penguiflow/cli/playground_ui/dist/assets/KaTeX_Math-Italic-flOr_0UB.ttf
penguiflow/cli/playground_ui/dist/assets/KaTeX_Math-Italic-t53AETM-.woff2
penguiflow/cli/playground_ui/dist/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf
penguiflow/cli/playground_ui/dist/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2
penguiflow/cli/playground_ui/dist/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff
penguiflow/cli/playground_ui/dist/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2
penguiflow/cli/playground_ui/dist/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff
penguiflow/cli/playground_ui/dist/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf
penguiflow/cli/playground_ui/dist/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf
penguiflow/cli/playground_ui/dist/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff
penguiflow/cli/playground_ui/dist/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2
penguiflow/cli/playground_ui/dist/assets/KaTeX_Script-Regular-C5JkGWo-.ttf
penguiflow/cli/playground_ui/dist/assets/KaTeX_Script-Regular-D3wIWfF6.woff2
penguiflow/cli/playground_ui/dist/assets/KaTeX_Script-Regular-D5yQViql.woff
penguiflow/cli/playground_ui/dist/assets/KaTeX_Size1-Regular-C195tn64.woff
penguiflow/cli/playground_ui/dist/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf
penguiflow/cli/playground_ui/dist/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2
penguiflow/cli/playground_ui/dist/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf
penguiflow/cli/playground_ui/dist/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2
penguiflow/cli/playground_ui/dist/assets/KaTeX_Size2-Regular-oD1tc_U0.woff
penguiflow/cli/playground_ui/dist/assets/KaTeX_Size3-Regular-CTq5MqoE.woff
penguiflow/cli/playground_ui/dist/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf
penguiflow/cli/playground_ui/dist/assets/KaTeX_Size4-Regular-BF-4gkZK.woff
penguiflow/cli/playground_ui/dist/assets/KaTeX_Size4-Regular-DWFBv043.ttf
penguiflow/cli/playground_ui/dist/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2
penguiflow/cli/playground_ui/dist/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff
penguiflow/cli/playground_ui/dist/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2
penguiflow/cli/playground_ui/dist/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf
penguiflow/cli/playground_ui/dist/assets/Latex-BvXMOmjP.js
penguiflow/cli/playground_ui/dist/assets/Latex-De3SCfkv.css
penguiflow/cli/playground_ui/dist/assets/Markdown-BDB-IX6n.js
penguiflow/cli/playground_ui/dist/assets/Markdown-Pe9lTta7.css
penguiflow/cli/playground_ui/dist/assets/McpApp-BZpNO5P3.css
penguiflow/cli/playground_ui/dist/assets/McpApp-DvKixuAx.js
penguiflow/cli/playground_ui/dist/assets/Mermaid-Csfl9UYS.js
penguiflow/cli/playground_ui/dist/assets/Mermaid-D_q-5SJ2.css
penguiflow/cli/playground_ui/dist/assets/Metric-ACL8obXm.js
penguiflow/cli/playground_ui/dist/assets/Metric-XBN5ZOGT.css
penguiflow/cli/playground_ui/dist/assets/Plotly-BnH91lxL.css
penguiflow/cli/playground_ui/dist/assets/Plotly-C118jwEr.js
penguiflow/cli/playground_ui/dist/assets/Report-Bi1tuc-w.css
penguiflow/cli/playground_ui/dist/assets/Report-z7R9RvZ2.js
penguiflow/cli/playground_ui/dist/assets/SelectOption-C3GjFro6.js
penguiflow/cli/playground_ui/dist/assets/SelectOption-CEnDdoyK.css
penguiflow/cli/playground_ui/dist/assets/Tabs-DglyNORR.css
penguiflow/cli/playground_ui/dist/assets/Tabs-eLnz5Yp7.js
penguiflow/cli/playground_ui/dist/assets/Video-CRVOXVK4.js
penguiflow/cli/playground_ui/dist/assets/Video-CRk6YMQD.css
penguiflow/cli/playground_ui/dist/assets/_baseUniq-CuJ55lUr.js
penguiflow/cli/playground_ui/dist/assets/_commonjsHelpers-CqkleIqs.js
penguiflow/cli/playground_ui/dist/assets/arc-BjoPuldK.js
penguiflow/cli/playground_ui/dist/assets/architectureDiagram-VXUJARFQ-D1mL-cth.js
penguiflow/cli/playground_ui/dist/assets/blockDiagram-VD42YOAC-gtvyMq72.js
penguiflow/cli/playground_ui/dist/assets/c4Diagram-YG6GDRKO-C5kxE3cF.js
penguiflow/cli/playground_ui/dist/assets/channel-tqRVuY5U.js
penguiflow/cli/playground_ui/dist/assets/chunk-4BX2VUAB-Cq4Dg_64.js
penguiflow/cli/playground_ui/dist/assets/chunk-55IACEB6-BtkK7AIg.js
penguiflow/cli/playground_ui/dist/assets/chunk-B4BG7PRW-wfpmNHz8.js
penguiflow/cli/playground_ui/dist/assets/chunk-DI55MBZ5-D24KjRxa.js
penguiflow/cli/playground_ui/dist/assets/chunk-FMBD7UC4-DgQ8ie6r.js
penguiflow/cli/playground_ui/dist/assets/chunk-QN33PNHL-DcFSm8MN.js
penguiflow/cli/playground_ui/dist/assets/chunk-QZHKN3VN-DL-f03mh.js
penguiflow/cli/playground_ui/dist/assets/chunk-TZMSLE5B-DBIV0IJG.js
penguiflow/cli/playground_ui/dist/assets/classDiagram-2ON5EDUG-DKxFJnrs.js
penguiflow/cli/playground_ui/dist/assets/classDiagram-v2-WZHVMYZB-DKxFJnrs.js
penguiflow/cli/playground_ui/dist/assets/clone-D9U5Y0NW.js
penguiflow/cli/playground_ui/dist/assets/cose-bilkent-S5V4N54A-CUuDJqyd.js
penguiflow/cli/playground_ui/dist/assets/cytoscape.esm-BnkdMOzK.js
penguiflow/cli/playground_ui/dist/assets/dagre-6UL2VRFP-E7QXp1vz.js
penguiflow/cli/playground_ui/dist/assets/defaultLocale-C4B-KCzX.js
penguiflow/cli/playground_ui/dist/assets/diagram-PSM6KHXK-B_kX9vIV.js
penguiflow/cli/playground_ui/dist/assets/diagram-QEK2KX5R-DL0_ikiB.js
penguiflow/cli/playground_ui/dist/assets/diagram-S2PKOQOG-CKmrpwsz.js
penguiflow/cli/playground_ui/dist/assets/erDiagram-Q2GNP2WA-DUb2_yUX.js
penguiflow/cli/playground_ui/dist/assets/flowDiagram-NV44I4VS-HXtWzaOM.js
penguiflow/cli/playground_ui/dist/assets/ganttDiagram-JELNMOA3-Bm0ZpMvx.js
penguiflow/cli/playground_ui/dist/assets/gitGraphDiagram-NY62KEGX-Cw-lAiyW.js
penguiflow/cli/playground_ui/dist/assets/graph-D94UBb36.js
penguiflow/cli/playground_ui/dist/assets/index-BtH6urND.js
penguiflow/cli/playground_ui/dist/assets/index-Dnuj1gfI.css
penguiflow/cli/playground_ui/dist/assets/infoDiagram-WHAUD3N6-CcGZDlGg.js
penguiflow/cli/playground_ui/dist/assets/init-Gi6I4Gst.js
penguiflow/cli/playground_ui/dist/assets/journeyDiagram-XKPGCS4Q-DUXRjBuz.js
penguiflow/cli/playground_ui/dist/assets/kanban-definition-3W4ZIXB7-ByuSgj0b.js
penguiflow/cli/playground_ui/dist/assets/katex-DvXFAOB1.css
penguiflow/cli/playground_ui/dist/assets/katex-XbL3y5x-.js
penguiflow/cli/playground_ui/dist/assets/layout-BOzqR1Fw.js
penguiflow/cli/playground_ui/dist/assets/linear-DryK26Fw.js
penguiflow/cli/playground_ui/dist/assets/min-xSV5yc_p.js
penguiflow/cli/playground_ui/dist/assets/mindmap-definition-VGOIOE7T-DNFIttYo.js
penguiflow/cli/playground_ui/dist/assets/ordinal-Cboi1Yqb.js
penguiflow/cli/playground_ui/dist/assets/pieDiagram-ADFJNKIX-ChPUg97j.js
penguiflow/cli/playground_ui/dist/assets/purify.es-HRjpPm7y.js
penguiflow/cli/playground_ui/dist/assets/quadrantDiagram-AYHSOK5B-DKRSSvJQ.js
penguiflow/cli/playground_ui/dist/assets/requirementDiagram-UZGBJVZJ-CREmn6Kn.js
penguiflow/cli/playground_ui/dist/assets/sankeyDiagram-TZEHDZUN-DZaeCZid.js
penguiflow/cli/playground_ui/dist/assets/sequenceDiagram-WL72ISMW-uI8hMR7Q.js
penguiflow/cli/playground_ui/dist/assets/stateDiagram-FKZM4ZOC-B0HRTakh.js
penguiflow/cli/playground_ui/dist/assets/stateDiagram-v2-4FDKWEC3-DgF5-4C7.js
penguiflow/cli/playground_ui/dist/assets/timeline-definition-IT6M3QCI-BZSfJDA3.js
penguiflow/cli/playground_ui/dist/assets/treemap-KMMF4GRG-Dk5hkai-.js
penguiflow/cli/playground_ui/dist/assets/xychartDiagram-PRI3JC2R-BDm_YP-Z.js
penguiflow/cli/templates/ENV_SETUP.md.jinja
penguiflow/cli/templates/README.md.jinja
penguiflow/cli/templates/__init__.py
penguiflow/cli/templates/config.py.jinja
penguiflow/cli/templates/conftest.py.jinja
penguiflow/cli/templates/env.example.jinja
penguiflow/cli/templates/external_tools.py.jinja
penguiflow/cli/templates/flow.py.jinja
penguiflow/cli/templates/flow_orchestrator.py.jinja
penguiflow/cli/templates/flows_init.py.jinja
penguiflow/cli/templates/planner.py.jinja
penguiflow/cli/templates/test_flow.py.jinja
penguiflow/cli/templates/test_tool.py.jinja
penguiflow/cli/templates/tool.py.jinja
penguiflow/cli/templates/tools_init.py.jinja
penguiflow/cli/templates/init/AGENTS.md.jinja
penguiflow/cli/templates/init/PENGUIFLOW.md.jinja
penguiflow/cli/templates/init/sample_spec.yaml.jinja
penguiflow/common_tools/__init__.py
penguiflow/common_tools/web/__init__.py
penguiflow/common_tools/web/brave_client.py
penguiflow/common_tools/web/cache.py
penguiflow/common_tools/web/fetch.py
penguiflow/common_tools/web/specs.py
penguiflow/common_tools/web/untrusted.py
penguiflow/llm/__init__.py
penguiflow/llm/client.py
penguiflow/llm/errors.py
penguiflow/llm/native_policy.py
penguiflow/llm/pricing.py
penguiflow/llm/protocol.py
penguiflow/llm/retry.py
penguiflow/llm/routing.py
penguiflow/llm/telemetry.py
penguiflow/llm/types.py
penguiflow/llm/output/__init__.py
penguiflow/llm/output/native.py
penguiflow/llm/output/prompted.py
penguiflow/llm/output/tool.py
penguiflow/llm/profiles/__init__.py
penguiflow/llm/profiles/anthropic.py
penguiflow/llm/profiles/bedrock.py
penguiflow/llm/profiles/databricks.py
penguiflow/llm/profiles/google.py
penguiflow/llm/profiles/nim.py
penguiflow/llm/profiles/openai.py
penguiflow/llm/profiles/openrouter.py
penguiflow/llm/providers/__init__.py
penguiflow/llm/providers/anthropic.py
penguiflow/llm/providers/base.py
penguiflow/llm/providers/bedrock.py
penguiflow/llm/providers/databricks.py
penguiflow/llm/providers/google.py
penguiflow/llm/providers/nim.py
penguiflow/llm/providers/openai.py
penguiflow/llm/providers/openrouter.py
penguiflow/llm/schema/__init__.py
penguiflow/llm/schema/anthropic.py
penguiflow/llm/schema/bedrock.py
penguiflow/llm/schema/databricks.py
penguiflow/llm/schema/google.py
penguiflow/llm/schema/openai.py
penguiflow/llm/schema/plan.py
penguiflow/llm/schema/transformer.py
penguiflow/planner/__init__.py
penguiflow/planner/artifact_handling.py
penguiflow/planner/artifact_registry.py
penguiflow/planner/catalog_extension.py
penguiflow/planner/compress.py
penguiflow/planner/constraints.py
penguiflow/planner/context.py
penguiflow/planner/dspy_client.py
penguiflow/planner/error_recovery.py
penguiflow/planner/hints.py
penguiflow/planner/llm.py
penguiflow/planner/llm_context_hooks.py
penguiflow/planner/memory.py
penguiflow/planner/memory_integration.py
penguiflow/planner/migration.py
penguiflow/planner/models.py
penguiflow/planner/parallel.py
penguiflow/planner/pause.py
penguiflow/planner/pause_management.py
penguiflow/planner/payload_builders.py
penguiflow/planner/planner_context.py
penguiflow/planner/prompts.py
penguiflow/planner/react.py
penguiflow/planner/react_init.py
penguiflow/planner/react_runtime.py
penguiflow/planner/react_step.py
penguiflow/planner/react_utils.py
penguiflow/planner/reflection_prompts.py
penguiflow/planner/streaming.py
penguiflow/planner/tool_aliasing.py
penguiflow/planner/tool_calls.py
penguiflow/planner/tool_get_tool.py
penguiflow/planner/tool_search_cache.py
penguiflow/planner/tool_search_tool.py
penguiflow/planner/trajectory.py
penguiflow/planner/validation_repair.py
penguiflow/planner/guardrails/__init__.py
penguiflow/planner/guardrails/async_eval.py
penguiflow/planner/guardrails/config.py
penguiflow/planner/guardrails/context.py
penguiflow/planner/guardrails/gateway.py
penguiflow/planner/guardrails/models.py
penguiflow/planner/guardrails/protocols.py
penguiflow/planner/guardrails/registry.py
penguiflow/planner/guardrails/routing.py
penguiflow/planner/guardrails/rules.py
penguiflow/planner/guardrails/utils.py
penguiflow/rich_output/__init__.py
penguiflow/rich_output/nodes.py
penguiflow/rich_output/prompting.py
penguiflow/rich_output/registry.json
penguiflow/rich_output/registry.py
penguiflow/rich_output/runtime.py
penguiflow/rich_output/tools.py
penguiflow/rich_output/validate.py
penguiflow/sessions/__init__.py
penguiflow/sessions/broker.py
penguiflow/sessions/models.py
penguiflow/sessions/persistence.py
penguiflow/sessions/planner.py
penguiflow/sessions/policy.py
penguiflow/sessions/proactive.py
penguiflow/sessions/projections.py
penguiflow/sessions/registry.py
penguiflow/sessions/scheduler.py
penguiflow/sessions/session.py
penguiflow/sessions/session_kv.py
penguiflow/sessions/task_service.py
penguiflow/sessions/task_tools.py
penguiflow/sessions/telemetry.py
penguiflow/sessions/tool_jobs.py
penguiflow/sessions/transport.py
penguiflow/skills/__init__.py
penguiflow/skills/local_store.py
penguiflow/skills/models.py
penguiflow/skills/pack_loader.py
penguiflow/skills/provider.py
penguiflow/skills/redaction.py
penguiflow/skills/tools/__init__.py
penguiflow/skills/tools/skill_get_tool.py
penguiflow/skills/tools/skill_list_tool.py
penguiflow/skills/tools/skill_propose_tool.py
penguiflow/skills/tools/skill_search_tool.py
penguiflow/state/__init__.py
penguiflow/state/adapters.py
penguiflow/state/in_memory.py
penguiflow/state/models.py
penguiflow/state/protocol.py
penguiflow/steering/__init__.py
penguiflow/steering/guard_inbox.py
penguiflow/steering/steering.py
penguiflow/templates/__init__.py
penguiflow/templates/spec.template.yaml
penguiflow/templates/new/__init__.py
penguiflow/templates/new/analyst/ENV_SETUP.md
penguiflow/templates/new/analyst/README.md.jinja
penguiflow/templates/new/analyst/pyproject.toml.jinja
penguiflow/templates/new/analyst/src/__package_name__/__init__.py.jinja
penguiflow/templates/new/analyst/src/__package_name__/__main__.py.jinja
penguiflow/templates/new/analyst/src/__package_name__/a2a.py.jinja
penguiflow/templates/new/analyst/src/__package_name__/config.py.jinja
penguiflow/templates/new/analyst/src/__package_name__/memory_hooks.py.jinja
penguiflow/templates/new/analyst/src/__package_name__/models.py.jinja
penguiflow/templates/new/analyst/src/__package_name__/orchestrator.py.jinja
penguiflow/templates/new/analyst/src/__package_name__/planner.py.jinja
penguiflow/templates/new/analyst/src/__package_name__/telemetry.py.jinja
penguiflow/templates/new/analyst/src/__package_name__/clients/__init__.py
penguiflow/templates/new/analyst/src/__package_name__/clients/analyst.py.jinja
penguiflow/templates/new/analyst/src/__package_name__/clients/memory.py.jinja
penguiflow/templates/new/analyst/src/__package_name__/tools/__init__.py.jinja
penguiflow/templates/new/analyst/src/__package_name__/tools/analysis.py.jinja
penguiflow/templates/new/analyst/tests/__init__.py
penguiflow/templates/new/analyst/tests/conftest.py.jinja
penguiflow/templates/new/analyst/tests/test_orchestrator.py.jinja
penguiflow/templates/new/analyst/tests/test_tools.py.jinja
penguiflow/templates/new/controller/README.md.jinja
penguiflow/templates/new/controller/pyproject.toml.jinja
penguiflow/templates/new/controller/src/__package_name__/__init__.py.jinja
penguiflow/templates/new/controller/src/__package_name__/__main__.py.jinja
penguiflow/templates/new/controller/src/__package_name__/a2a.py.jinja
penguiflow/templates/new/controller/src/__package_name__/config.py.jinja
penguiflow/templates/new/controller/src/__package_name__/flow.py.jinja
penguiflow/templates/new/controller/src/__package_name__/orchestrator.py.jinja
penguiflow/templates/new/controller/src/__package_name__/telemetry.py.jinja
penguiflow/templates/new/controller/src/__package_name__/clients/__init__.py
penguiflow/templates/new/controller/src/__package_name__/clients/memory.py.jinja
penguiflow/templates/new/controller/tests/__init__.py
penguiflow/templates/new/controller/tests/conftest.py.jinja
penguiflow/templates/new/controller/tests/test_flow.py.jinja
penguiflow/templates/new/controller/tests/test_orchestrator.py.jinja
penguiflow/templates/new/enterprise/ENV_SETUP.md
penguiflow/templates/new/enterprise/README.md.jinja
penguiflow/templates/new/enterprise/pyproject.toml.jinja
penguiflow/templates/new/enterprise/src/__package_name__/__init__.py.jinja
penguiflow/templates/new/enterprise/src/__package_name__/__main__.py.jinja
penguiflow/templates/new/enterprise/src/__package_name__/a2a.py.jinja
penguiflow/templates/new/enterprise/src/__package_name__/config.py.jinja
penguiflow/templates/new/enterprise/src/__package_name__/memory_hooks.py.jinja
penguiflow/templates/new/enterprise/src/__package_name__/models.py.jinja
penguiflow/templates/new/enterprise/src/__package_name__/orchestrator.py.jinja
penguiflow/templates/new/enterprise/src/__package_name__/planner.py.jinja
penguiflow/templates/new/enterprise/src/__package_name__/resilience.py.jinja
penguiflow/templates/new/enterprise/src/__package_name__/telemetry.py.jinja
penguiflow/templates/new/enterprise/src/__package_name__/clients/__init__.py
penguiflow/templates/new/enterprise/src/__package_name__/clients/memory.py.jinja
penguiflow/templates/new/enterprise/src/__package_name__/clients/registry.py.jinja
penguiflow/templates/new/enterprise/src/__package_name__/server/__init__.py.jinja
penguiflow/templates/new/enterprise/src/__package_name__/server/handlers.py.jinja
penguiflow/templates/new/enterprise/src/__package_name__/tools/__init__.py.jinja
penguiflow/templates/new/enterprise/src/__package_name__/tools/diagnostics.py.jinja
penguiflow/templates/new/enterprise/src/__package_name__/tools/resolve.py.jinja
penguiflow/templates/new/enterprise/src/__package_name__/tools/validate.py.jinja
penguiflow/templates/new/enterprise/tests/__init__.py
penguiflow/templates/new/enterprise/tests/conftest.py.jinja
penguiflow/templates/new/enterprise/tests/test_orchestrator.py.jinja
penguiflow/templates/new/enterprise/tests/test_registry.py.jinja
penguiflow/templates/new/enterprise/tests/test_resilience.py.jinja
penguiflow/templates/new/enterprise/tests/test_server.py.jinja
penguiflow/templates/new/enterprise/tests/test_telemetry.py.jinja
penguiflow/templates/new/enterprise/tests/test_tools.py.jinja
penguiflow/templates/new/enterprise/tests/test_validation.py.jinja
penguiflow/templates/new/flow/README.md.jinja
penguiflow/templates/new/flow/pyproject.toml.jinja
penguiflow/templates/new/flow/src/__package_name__/__init__.py.jinja
penguiflow/templates/new/flow/src/__package_name__/__main__.py.jinja
penguiflow/templates/new/flow/src/__package_name__/a2a.py.jinja
penguiflow/templates/new/flow/src/__package_name__/config.py.jinja
penguiflow/templates/new/flow/src/__package_name__/flow.py.jinja
penguiflow/templates/new/flow/src/__package_name__/orchestrator.py.jinja
penguiflow/templates/new/flow/src/__package_name__/telemetry.py.jinja
penguiflow/templates/new/flow/src/__package_name__/clients/__init__.py
penguiflow/templates/new/flow/src/__package_name__/clients/memory.py.jinja
penguiflow/templates/new/flow/tests/__init__.py
penguiflow/templates/new/flow/tests/conftest.py.jinja
penguiflow/templates/new/flow/tests/test_flow.py.jinja
penguiflow/templates/new/flow/tests/test_orchestrator.py.jinja
penguiflow/templates/new/minimal/ENV_SETUP.md
penguiflow/templates/new/minimal/README.md.jinja
penguiflow/templates/new/minimal/pyproject.toml.jinja
penguiflow/templates/new/minimal/src/__package_name__/__init__.py.jinja
penguiflow/templates/new/minimal/src/__package_name__/__main__.py.jinja
penguiflow/templates/new/minimal/src/__package_name__/a2a.py.jinja
penguiflow/templates/new/minimal/src/__package_name__/config.py.jinja
penguiflow/templates/new/minimal/src/__package_name__/memory_hooks.py.jinja
penguiflow/templates/new/minimal/src/__package_name__/orchestrator.py.jinja
penguiflow/templates/new/minimal/src/__package_name__/telemetry.py.jinja
penguiflow/templates/new/minimal/src/__package_name__/tools.py.jinja
penguiflow/templates/new/minimal/src/__package_name__/clients/__init__.py
penguiflow/templates/new/minimal/src/__package_name__/clients/memory.py.jinja
penguiflow/templates/new/minimal/tests/__init__.py
penguiflow/templates/new/minimal/tests/conftest.py.jinja
penguiflow/templates/new/minimal/tests/test_orchestrator.py.jinja
penguiflow/templates/new/minimal/tests/test_tools.py.jinja
penguiflow/templates/new/parallel/ENV_SETUP.md
penguiflow/templates/new/parallel/README.md.jinja
penguiflow/templates/new/parallel/pyproject.toml.jinja
penguiflow/templates/new/parallel/src/__package_name__/__init__.py.jinja
penguiflow/templates/new/parallel/src/__package_name__/__main__.py.jinja
penguiflow/templates/new/parallel/src/__package_name__/a2a.py.jinja
penguiflow/templates/new/parallel/src/__package_name__/config.py.jinja
penguiflow/templates/new/parallel/src/__package_name__/memory_hooks.py.jinja
penguiflow/templates/new/parallel/src/__package_name__/models.py.jinja
penguiflow/templates/new/parallel/src/__package_name__/orchestrator.py.jinja
penguiflow/templates/new/parallel/src/__package_name__/planner.py.jinja
penguiflow/templates/new/parallel/src/__package_name__/telemetry.py.jinja
penguiflow/templates/new/parallel/src/__package_name__/clients/__init__.py
penguiflow/templates/new/parallel/src/__package_name__/clients/memory.py.jinja
penguiflow/templates/new/parallel/src/__package_name__/tools/__init__.py.jinja
penguiflow/templates/new/parallel/src/__package_name__/tools/fetch.py.jinja
penguiflow/templates/new/parallel/src/__package_name__/tools/merge.py.jinja
penguiflow/templates/new/parallel/tests/__init__.py
penguiflow/templates/new/parallel/tests/conftest.py.jinja
penguiflow/templates/new/parallel/tests/test_orchestrator.py.jinja
penguiflow/templates/new/parallel/tests/test_tools/__init__.py
penguiflow/templates/new/parallel/tests/test_tools/test_fetch.py.jinja
penguiflow/templates/new/parallel/tests/test_tools/test_merge.py.jinja
penguiflow/templates/new/rag_server/ENV_SETUP.md
penguiflow/templates/new/rag_server/README.md.jinja
penguiflow/templates/new/rag_server/pyproject.toml.jinja
penguiflow/templates/new/rag_server/src/__package_name__/__init__.py.jinja
penguiflow/templates/new/rag_server/src/__package_name__/__main__.py.jinja
penguiflow/templates/new/rag_server/src/__package_name__/a2a.py.jinja
penguiflow/templates/new/rag_server/src/__package_name__/config.py.jinja
penguiflow/templates/new/rag_server/src/__package_name__/memory_hooks.py.jinja
penguiflow/templates/new/rag_server/src/__package_name__/models.py.jinja
penguiflow/templates/new/rag_server/src/__package_name__/orchestrator.py.jinja
penguiflow/templates/new/rag_server/src/__package_name__/planner.py.jinja
penguiflow/templates/new/rag_server/src/__package_name__/telemetry.py.jinja
penguiflow/templates/new/rag_server/src/__package_name__/clients/__init__.py
penguiflow/templates/new/rag_server/src/__package_name__/clients/memory.py.jinja
penguiflow/templates/new/rag_server/src/__package_name__/clients/rag_server.py.jinja
penguiflow/templates/new/rag_server/src/__package_name__/tools/__init__.py.jinja
penguiflow/templates/new/rag_server/src/__package_name__/tools/rag.py.jinja
penguiflow/templates/new/rag_server/tests/__init__.py
penguiflow/templates/new/rag_server/tests/conftest.py.jinja
penguiflow/templates/new/rag_server/tests/test_orchestrator.py.jinja
penguiflow/templates/new/rag_server/tests/test_tools.py.jinja
penguiflow/templates/new/react/ENV_SETUP.md
penguiflow/templates/new/react/README.md.jinja
penguiflow/templates/new/react/pyproject.toml.jinja
penguiflow/templates/new/react/src/__package_name__/__init__.py.jinja
penguiflow/templates/new/react/src/__package_name__/__main__.py.jinja
penguiflow/templates/new/react/src/__package_name__/a2a.py.jinja
penguiflow/templates/new/react/src/__package_name__/config.py.jinja
penguiflow/templates/new/react/src/__package_name__/memory_hooks.py.jinja
penguiflow/templates/new/react/src/__package_name__/models.py.jinja
penguiflow/templates/new/react/src/__package_name__/orchestrator.py.jinja
penguiflow/templates/new/react/src/__package_name__/planner.py.jinja
penguiflow/templates/new/react/src/__package_name__/telemetry.py.jinja
penguiflow/templates/new/react/src/__package_name__/clients/__init__.py
penguiflow/templates/new/react/src/__package_name__/clients/memory.py.jinja
penguiflow/templates/new/react/src/__package_name__/tools/__init__.py.jinja
penguiflow/templates/new/react/src/__package_name__/tools/analyze.py.jinja
penguiflow/templates/new/react/src/__package_name__/tools/search.py.jinja
penguiflow/templates/new/react/tests/__init__.py
penguiflow/templates/new/react/tests/conftest.py.jinja
penguiflow/templates/new/react/tests/test_orchestrator.py.jinja
penguiflow/templates/new/react/tests/test_tools/__init__.py
penguiflow/templates/new/react/tests/test_tools/test_analyze.py.jinja
penguiflow/templates/new/react/tests/test_tools/test_search.py.jinja
penguiflow/templates/new/wayfinder/ENV_SETUP.md
penguiflow/templates/new/wayfinder/README.md.jinja
penguiflow/templates/new/wayfinder/pyproject.toml.jinja
penguiflow/templates/new/wayfinder/src/__package_name__/__init__.py.jinja
penguiflow/templates/new/wayfinder/src/__package_name__/__main__.py.jinja
penguiflow/templates/new/wayfinder/src/__package_name__/a2a.py.jinja
penguiflow/templates/new/wayfinder/src/__package_name__/config.py.jinja
penguiflow/templates/new/wayfinder/src/__package_name__/memory_hooks.py.jinja
penguiflow/templates/new/wayfinder/src/__package_name__/models.py.jinja
penguiflow/templates/new/wayfinder/src/__package_name__/orchestrator.py.jinja
penguiflow/templates/new/wayfinder/src/__package_name__/planner.py.jinja
penguiflow/templates/new/wayfinder/src/__package_name__/telemetry.py.jinja
penguiflow/templates/new/wayfinder/src/__package_name__/clients/__init__.py
penguiflow/templates/new/wayfinder/src/__package_name__/clients/memory.py.jinja
penguiflow/templates/new/wayfinder/src/__package_name__/clients/wayfinder.py.jinja
penguiflow/templates/new/wayfinder/src/__package_name__/tools/__init__.py.jinja
penguiflow/templates/new/wayfinder/src/__package_name__/tools/nlq.py.jinja
penguiflow/templates/new/wayfinder/tests/__init__.py
penguiflow/templates/new/wayfinder/tests/conftest.py.jinja
penguiflow/templates/new/wayfinder/tests/test_orchestrator.py.jinja
penguiflow/templates/new/wayfinder/tests/test_tools.py.jinja
penguiflow/templates/vscode/__init__.py
penguiflow/templates/vscode/launch.json
penguiflow/templates/vscode/penguiflow.code-snippets
penguiflow/templates/vscode/settings.json
penguiflow/templates/vscode/tasks.json
penguiflow/tools/__init__.py
penguiflow/tools/adapters.py
penguiflow/tools/apps.py
penguiflow/tools/auth.py
penguiflow/tools/config.py
penguiflow/tools/errors.py
penguiflow/tools/node.py
penguiflow/tools/presets.py
penguiflow/tools/prompts.py
penguiflow/tools/resources.py
penguiflow_a2a/__init__.py
penguiflow_a2a/config.py
penguiflow_a2a/core.py
penguiflow_a2a/errors.py
penguiflow_a2a/models.py
penguiflow_a2a/planner_tools.py
penguiflow_a2a/push.py
penguiflow_a2a/server.py
penguiflow_a2a/sse.py
penguiflow_a2a/store.py
penguiflow_a2a/transport.py
penguiflow_a2a/bindings/__init__.py
penguiflow_a2a/bindings/grpc.py
penguiflow_a2a/bindings/http.py
penguiflow_a2a/grpc/__init__.py
penguiflow_a2a/grpc/a2a_pb2.py
penguiflow_a2a/grpc/a2a_pb2_grpc.py
tests/test_a2a_server.py
tests/test_admin_coverage.py
tests/test_agui_adapter_base.py
tests/test_agui_adapter_fastapi.py
tests/test_agui_adapter_penguiflow.py
tests/test_arg_fill_render_component.py
tests/test_artifact_handling.py
tests/test_artifact_registry.py
tests/test_artifacts.py
tests/test_auth_manager.py
tests/test_auto_seq.py
tests/test_bidirectional_session.py
tests/test_budgets.py
tests/test_cancel.py
tests/test_catalog.py
tests/test_catalog_extension.py
tests/test_cli_init.py
tests/test_cli_new.py
tests/test_common_tools_web.py
tests/test_context_merge.py
tests/test_control_policy.py
tests/test_controller.py
tests/test_core.py
tests/test_databricks_provider.py
tests/test_distribution_hooks.py
tests/test_enterprise_telemetry_auto_seq.py
tests/test_error_recovery.py
tests/test_errors.py
tests/test_examples_roadmap.py
tests/test_fts_query_sanitization.py
tests/test_google_provider_streaming.py
tests/test_guardrails_gateway.py
tests/test_guardrails_inbox.py
tests/test_guardrails_integration.py
tests/test_guardrails_models.py
tests/test_guardrails_policy_pack.py
tests/test_guardrails_policy_validation.py
tests/test_guardrails_rules.py
tests/test_hints.py
tests/test_llm_client.py
tests/test_llm_client_smoke.py
tests/test_llm_errors.py
tests/test_llm_native_client.py
tests/test_llm_output_strategies.py
tests/test_llm_pricing.py
tests/test_llm_pricing_additional.py
tests/test_llm_profiles.py
tests/test_llm_protocol.py
tests/test_llm_provider_anthropic.py
tests/test_llm_provider_bedrock.py
tests/test_llm_provider_complete.py
tests/test_llm_provider_databricks.py
tests/test_llm_provider_google.py
tests/test_llm_provider_nim.py
tests/test_llm_provider_openai.py
tests/test_llm_provider_openrouter.py
tests/test_llm_providers.py
tests/test_llm_reasoning_extraction.py
tests/test_llm_retry.py
tests/test_llm_routing.py
tests/test_llm_schema.py
tests/test_llm_schema_transformers.py
tests/test_llm_telemetry.py
tests/test_llm_types.py
tests/test_logging.py
tests/test_metadata.py
tests/test_metrics.py
tests/test_middlewares.py
tests/test_middlewares_coverage.py
tests/test_misc_coverage.py
tests/test_node.py
tests/test_parallel_edge_cases.py
tests/test_patterns.py
tests/test_patterns_edge_cases.py
tests/test_payload_builders.py
tests/test_phase4_hardening.py
tests/test_planner_action_normalization.py
tests/test_planner_action_schema.py
tests/test_planner_models.py
tests/test_planner_prompts.py
tests/test_planner_streaming_extractors.py
tests/test_planner_task_pipeline_pause.py
tests/test_playground_phase3.py
tests/test_proactive_reports.py
tests/test_prompts_coverage.py
tests/test_property_based.py
tests/test_react_helpers.py
tests/test_react_planner.py
tests/test_react_planner_fork.py
tests/test_react_planner_session_concurrency.py
tests/test_react_policy.py
tests/test_react_reflection.py
tests/test_reflection_prompts.py
tests/test_registry.py
tests/test_remote.py
tests/test_render_component_dedupe.py
tests/test_render_component_props_arg_fill.py
tests/test_rich_output_nodes.py
tests/test_rich_output_prompting.py
tests/test_rich_output_registry.py
tests/test_rich_output_runtime.py
tests/test_rich_output_tools.py
tests/test_rich_output_validate.py
tests/test_routing_policy.py
tests/test_schema_plan_additional.py
tests/test_session_state_store_retention.py
tests/test_session_telemetry.py
tests/test_sessions_persistence.py
tests/test_sessions_scheduler.py
tests/test_sessions_transport.py
tests/test_short_term_memory.py
tests/test_skills_local_store.py
tests/test_skills_pack_loader.py
tests/test_skills_pack_pruning.py
tests/test_skills_prompts.py
tests/test_skills_provider.py
tests/test_skills_redaction.py
tests/test_skills_runtime_provider.py
tests/test_skills_tools.py
tests/test_state_unified_store.py
tests/test_steering_and_adapters.py
tests/test_steering_inbox.py
tests/test_streaming.py
tests/test_streaming_stream_flow.py
tests/test_streaming_utils.py
tests/test_task_lifecycle.py
tests/test_task_registry.py
tests/test_task_registry_and_policy.py
tests/test_task_service.py
tests/test_task_tools.py
tests/test_testkit.py
tests/test_tool_adapters.py
tests/test_tool_aliasing.py
tests/test_tool_background_mode.py
tests/test_tool_directory_prompts.py
tests/test_tool_discovery_runtime.py
tests/test_tool_errors.py
tests/test_tool_get_phase1.py
tests/test_tool_jobs.py
tests/test_tool_search_phase1.py
tests/test_tool_visibility.py
tests/test_toolnode_apps.py
tests/test_toolnode_arg_validation.py
tests/test_toolnode_connect.py
tests/test_toolnode_extended.py
tests/test_toolnode_phase1.py
tests/test_toolnode_phase2.py
tests/test_toolnode_phase3.py
tests/test_tools_helpers.py
tests/test_trajectory_coverage.py
tests/test_types.py
tests/test_update_broker.py
tests/test_viz.py