Conversation
There was a problem hiding this comment.
Pull Request Overview
This PR adds comprehensive MkDocs documentation and guides for the agents-arcade project along with updated examples, API references, CI workflows, and minor code improvements. Key changes include:
- New documentation for toolkits, error handling, advanced usage, authentication, and contributing.
- Updated API and README documentation with examples and integration instructions.
- Code enhancements in agents_arcade/tools.py and agents_arcade/_utils.py to support optional client initialization.
Reviewed Changes
Copilot reviewed 23 out of 24 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| docs/guides/.md, docs/getting-started/ | New guides on toolkits, error handling, authentication, and quickstart guides. |
| docs/examples/*.md, docs/contributing.md | Added examples and contribution guidelines to aid users and developers. |
| docs/api/*.md | API reference documentation for utils, tools, and errors. |
| README.md (both docs and root) | Updated usage instructions and project description for better clarity. |
| agents_arcade/tools.py, _utils.py | Minor code improvements, including handling optional client initialization. |
| .github/workflows/*.yml | Added workflows to build, check, and deploy documentation. |
Files not reviewed (1)
- build_docs.sh: Language not supported
Comments suppressed due to low confidence (1)
README.md:25
- There's a spelling error: 'reqwuire' should be corrected to 'require'.
`agents-arcade` provides an integration between [Arcade](https://docs.arcade.dev) and the [OpenAI Agents Library](https://github.com/openai/openai-python). This allows you to enhance your AI agents with Arcade's extensive toolkit ecosystem, including tools that reqwuire authorization like Google Mail, Linkedin, X, and more.
| ```bash | ||
| pip install agents-arcade | ||
| ``` | ||
|
|
There was a problem hiding this comment.
I was following the instructions, and I hit this error:
arcadepy.ArcadeError: The api_key client option must be set either by passing api_key to the client or by setting the ARCADE_API_KEY environment variableIt would be nice to add the prerequisites section here, too.
| 1. Installed `agents-arcade` (see [Installation](installation.md)) | ||
| 2. An Arcade API key (sign up at [arcade.dev](https://arcade.dev) if you don't have one) | ||
| 3. Set the `ARCADE_API_KEY` environment variable or have your API key ready to use | ||
|
|
There was a problem hiding this comment.
We should also mention that you need to set the OPENAI_API_KEY environment variable
| ) | ||
| print("Final output:\n\n", result.final_output) | ||
| except AuthorizationError as e: | ||
| print("Please Login to Github:", e) |
There was a problem hiding this comment.
Probably nice to add this like in the other pages:
if __name__ == "__main__":
import asyncio
asyncio.run(main())| tools = await get_arcade_tools(client, ["google"]) | ||
|
|
||
| # Use multiple toolkits | ||
| tools = await get_arcade_tools(client, ["github", "google", "linkedin"]) |
There was a problem hiding this comment.
This is currently not working:
tools = await get_arcade_tools(
client,
toolkits=["google", "github"],
)|
|
||
| ```python | ||
| from arcadepy import AsyncArcade | ||
| from arcadepy.auth import wait_for_authorization_completion |
There was a problem hiding this comment.
Maybe I'm doing something wrong, but:
Import "arcadepy.auth" could not be resolved
| | `linkedin` | Interact with LinkedIn (posts, profile, messaging) | Yes | | ||
| | `x` | Interact with X/Twitter (tweets, timeline, etc.) | Yes | | ||
| | `web` | Web search, browser automation | Partial | | ||
| | `news` | Access news articles and headlines | No | |
There was a problem hiding this comment.
News, weather, maps, data sources return no tools
| tools = await get_arcade_tools(client, ["github"]) | ||
|
|
||
| # Use multiple toolkits | ||
| tools = await get_arcade_tools(client, ["github", "google", "news"]) |
| For a better user experience, you might want to guide the user through the authorization process and retry the operation once authorized: | ||
|
|
||
| ```python | ||
| from arcadepy.auth import wait_for_authorization_completion |
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
adds a complete documentation system for the agents-arcade project, making it easier for users to understand and use the library.
Key Changes
Documentation Structure
Code Improvements
get_arcade_client()to properly handle API keys and paramsget_arcade_tools()with better client handlingCI/CD
Developer Tools
Testing
The MkDocs site builds successfully locally and the documentation covers all key aspects of the library.
I think we should do this for langchain and crewai