* docs: Add Go language quickstart
* updates based on review comments
* fix tab stops
* update based on review comments
* sync with main
* update to tested version
* Added google_search snippet
* Fix: Address Go style guide issues in google_search.go
* Migrated to new API
* Fixed tool info in md file
* Added partial check
* Added function-tools sample
* Migrated to new API
* Added partial check
* Ran linter
* feat: add go fmt check
* Run go fmt only on changed files
* Added google_search snippet
* Fix: Address Go style guide issues in google_search.go
* Migrated to new API
* Added partial check
* Added function-tools sample
* Migrated to new API
* Added partial check
* Ran linter
* feat: add go fmt check
* Run go fmt only on changed files
* Feat: Add Golang example for LLM agents
* Added schema agent
* Added session support
* Migrated to new API
* Added back OutputKey
* Added missing snippets
* Moved snipped to its own package
* Minor cleanup
* Reverted llm-agents.md
* Added back correct changes to llm-agents.md
* Updated to newest API
* Ran linter
* WIP
* WIP: Added the rest of the agents
* Added sequential agent
* Migrated agents to new API
* Fixed snippet tags
* Updated parallel and sequential with OutputKey
* Updated loop agent
* Cleanup
* Fixed and ran linter
* Removed comment
* Ran linter
* Added custom agent snippets
* Migrated to new API
* Fixed incorrect info about channels since run returns an Iterator, not Channel
* Cleanup and renaming
* Ran linter
* Fixed md
* Added multi-agent docs
* Updated to use AgentTool
* Split snippets
* Added missing file
* Ran linter and fixed API
* Added Models snippets
* Migrated to new API
* Embedded imports
* Ran linter
* Added long running tool
* Ran linter and fixed API
* Switched to two-turn style
* Ran linter
* Added callback snippets
* Added back imports
* Added types of callbacks snippets
* feat(go): align callback snippets with other languages
* Ran linter and updated API
* Added tool callbacks
* Added artifact snippets
* Use story.pdf instead of random bytes
* Fixed issue with artifact loading
* Cleanup unneeded fixes
* Added back inadvertently removed GCS section
* Addressed PR comments
* Ran linter
* feat: Added context snippets
* Fixed callback signature
* Fixed additional callbacks
* Added remaining snippets
* Added conceptual runner example
* Removed duplicate code
* Clean up tags and imports
* Updated API
* Twaked text
* Ran linter
* Fixed broken API issues
* Updated to latest Go ADK API
* Added func param info
* Interleaved Py and Go
* Revert mistakes
* Removed extra newline
* Added example cloud run code and update md with Go (#41)
* Added example cloud run code and update md with Go
* Added a2a_agent_url and fixed future tense
* Moved Go before Java
---------
Co-authored-by: ivanmkc <ivanmkc@google.com>
* adding go snippets to runconfig docs
* realigning runconfig go examples with current state of adk-go.
* adding language support tags to individual runtime config fields
* removing unsupported supportcfc go examples
* removing unsupported streamingmode.bidi go snippets
* Added AgentTool examples (#31)
* Added AgentTool example
* Ran formatter
---------
Co-authored-by: ivanmkc <ivanmkc@google.com>
* adding initial go sessions.sessions snippets
* updating go session docs + session examples
* update go session snippets
* updating DatabaseSessionService language support tag
* cleaning up go vertex ai comments
* removing go.mod for session_management_example
* docs: add language support tags for Go
* initial go runtime sample updates
* fixing runtime go snippet formatting
* formatting updates to runtime go snippets
* updating runtime go examples to streamline to newer go features
* adding go snippets for events
* updating go snippets for events
* adding artifactdelta snippet for go
* minor java fixes, cleaning up go event.content
* Custom tools: Merging again (#44)
* Added missing custom-tools snippets
* Split user_preference runner code
* Split more files
* Tweaks
* Split session into 1 and 2 and added artifact saving
* Fixed conflict
---------
Co-authored-by: ivanmkc <ivanmkc@google.com>
* Fixed tab issue with cloud-run md (#45)
Co-authored-by: ivanmkc <ivanmkc@google.com>
* adding initial go snippets for memory services
* updating go memory sample, adding python formatting in docs to clarify current support.
* removing go replace for memory example
* removing go.sum from memory_example
* fixing go formatting for memory example
* fixing go memory snippets to streamline examples in docs
* removing unnecessary go.mod for memory_example.go and snippet cleanup
* adding go session state snippets."
* adding additional go state examples for state injection
* fixing go formatting
* fixing language ordering on session/state.md; removing unnecessary go.mod files
* reworking error functions in go session state samples
* fixing go formatting on session state samples
* initial go snippets for safety tools
* fixing go snippet formatting in safety/index.md
* temp storing safety example
* cleaning up go snippets in safety docs; deferring safety go full example
* cleaning up go safety snippets
* Added link to Go API docs (#47)
Co-authored-by: ivanmkc <ivanmkc@google.com>
* Added a2a_basic sample (#46)
* Added a2a_basic sample
* Removed dummy LLMs
* Added md
Fix inaccuracies in md
Ran formatter
* Cleaned up index
---------
Co-authored-by: ivanmkc <ivanmkc@google.com>
* Reverted to proper ToC and added missing links (#48)
Co-authored-by: ivanmkc <ivanmkc@google.com>
* Added missing get-started/go.md (#50)
Co-authored-by: ivanmkc <ivanmkc@google.com>
* Added missing JSON tags for Go structs (#51)
* Added json tags
* Added jsonschema and json tags
---------
Co-authored-by: ivanmkc <ivanmkc@google.com>
* Renamed Golang to Go (#52)
Co-authored-by: ivanmkc <ivanmkc@google.com>
---------
Co-authored-by: Joe Fernandez <joefernandez@google.com>
Co-authored-by: ivanmkc <ivanmkc@google.com>
Co-authored-by: Toni Klopfenstein <tklopfenstein@google.com>
* docs: add language support tags to pages
- replace img.shield tags
- add language support tags where missing
* update Agents page with general tags
* update language and version tagging
- response to review comments
- rename css styles to avoid style name conflicts
* add tags to api-server page
* docs: Add Link to `GenerateContentConfig` docs and add example using `safety_settings`
* Re-add comment
---------
Co-authored-by: Joe Fernandez <joefernandez@users.noreply.github.com>
This commit clarifies the behavior of the `temp:` namespace in the documentation.
The following changes were made:
- Updated `docs/sessions/state.md` to provide a more detailed explanation of the `temp:` namespace.
- Updated `docs/context/index.md` to improve the clarity of an example related to passing data between tools.
- Updated `docs/runtime/index.md` to add a note about the scope of `temp:` variables.
- Updated `docs/agents/multi-agents.md` and `docs/agents/workflow-agents/sequential-agents.md` to clarify how the `temp:` namespace is propagated to sub-agents.
- Updated `docs/tools/function-tools.md` to explain how to use the `temp:` namespace to pass data between tool calls.
fixes#160
Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
Co-authored-by: Joe Fernandez <joefernandez@users.noreply.github.com>
* fix: update state key references
* update docs to include info on state injection in instructions
* update java snippet
* add docs on InstructionProvider
* add tooltip on direct state modification
---------
Co-authored-by: Lavi Nigam <98014943+lavinigam-gcp@users.noreply.github.com>
Updated the Markdown link to point directly to the relevant section (output_key) within the LLM Agent documentation, instead of linking to the top of the page.
Co-authored-by: Lavi Nigam <98014943+lavinigam-gcp@users.noreply.github.com>
- #254 docs/sessions/session.md -> …part of session object's identification.
In the session object identification description, it was unclear (for first time readers), what exactly is id, and app_name and how they are different. Added some examples according to my own understanding. Please change accordingly if you feel so. Thanks.
- #252 Multiple files: quickstart-streaming.md, quickstart.md, mcp-tools.md
add an option in the CLI to enable or disable the reload feature. So users(esp. windows) can disable this if they come across the '_make_subprocess_transport NotImplementedError' bug on windows.
- #179 docs/agents/models.md -> Add Windows Encoding Note for LiteLLM
When using ADK agents with LiteLlm on Windows, users might encounter a UnicodeDecodeError: 'charmap' codec can't decode byte... error. This often happens when litellm (used by LiteLlm) tries to read cached files (like model pricing information) using the default Windows encoding (cp1252) instead of UTF-8.
- #170 docs/tools/mcp-tools.md fix: update ADK setup link and add .env file location note in MCPTools.
Also resolved the issue: #169
* feat: Improve workflow agent examples (Loop, Parallel, Sequence)
This commit enhances the examples for LoopAgent, ParallelAgent, and SequenceAgent to provide clearer usage patterns, demonstrate key features, and improve developer experience.
Agent-Specific Fixes & Enhancements:
LoopAgent:
Adds an example demonstrating CheckCondition usage, showing both max_iterations and custom condition-based termination.
Fixesgoogle/adk-docs#67, google/adk-docs#148, google/adk-python#315
ParallelAgent:
Adds an example showing how to merge outputs from parallel branches using a subsequent SequentialAgent and agent states.
Demonstrates state/output control after parallel execution.
Fixesgoogle/adk-docs#142
SequenceAgent:
Clarifies the example to show explicit use of agent states within instructions for passing outputs between sequential steps.
Fixesgoogle/adk-docs#150
General Example Improvements (Applied across all three):
Updated examples to use InMemoryRunner.
Adopted new, clearer instruction prompt templates.
Included runner.run_async calls in standalone .py files to demonstrate programmatic execution outside adk web.
Enhanced InMemoryRunner print output for better visibility of individual agent outputs during execution.
Added commented-out asyncio.run() calls in .py files for environments requiring explicit async loop management.
Included multiple example queries in .py files for testing.
Added "Part of agent.py -->" comment for easy copy-pasting into agent.py for use with adk web.
Added copyright and license headers for each file.
* fix: instructions for LoopAgent is cleaned up and removed backticks. Changed the init to include initial state in the ---8<
* feat(LoopAgent): add exit_loop tool for controlled exit
Introduces the `exit_loop` tool, enabling the agent to programmatically trigger an exit from its processing loop based on internal logic or tool usage.
fix(LoopAgent): correct state f-string formatting
Resolves runtime errors caused by incorrect f-string formatting when state variables were used within the agent's execution flow.
chore: Temporarily comment out session/runner setup
Comments out initialization code related to session, runner, and agent interaction for debugging/refactoring purposes. This section should be revisited.
Update the variable name in `docs/agents/custom-agents.md`.
* Change the variable name to `GEMINI_2_FLASH` on line 114 to maintain consistency with example's code
Co-authored-by: Kristopher Overholt <koverholt@gmail.com>
* fix: update gemini 2.0 flash to latest model id for Live API
* fix: use -flash for most pages instead of the live api model
* fix: wording andformatting
* fix: resolve merge conflict