Skip to content

Deepagent-code integration demo - #4527

Open
michalkulakowski wants to merge 9 commits into
mainfrom
mkulakow/deepagents_integration
Open

Deepagent-code integration demo#4527
michalkulakowski wants to merge 9 commits into
mainfrom
mkulakow/deepagents_integration

Conversation

@michalkulakowski

Copy link
Copy Markdown
Collaborator

🛠 Summary

JIRA/Issue if applicable.
Describe the changes.

🧪 Checklist

  • Unit tests added.
  • The documentation updated.
  • Change follows security best practices.
    ``

Copilot AI lite review requested due to automatic review settings September 9, 2026 09:53

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

The new README is not merge-ready due to multiple placeholder blocks and inconsistent step numbering, and the skill metadata license field should be aligned with the repo license to avoid confusion.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Pull request overview

Adds a new demo directory illustrating how to run short “DeepAgents Code” scenarios against OpenVINO Model Server, including local DeepAgents project assets for MCP SDK guidance and a verification subagent profile.

Changes:

  • Introduces a new demo README with end-to-end setup instructions and scenario prompts.
  • Adds project-local DeepAgents assets: an MCP SDK skill, an MCP tester subagent profile, and an MCP server config stub.
  • Adds a demo-scoped .gitignore for common local artifacts.
File summaries
File Description
demos/integration_with_deepagents_code/README.md Documents OVMS + dcode setup and a series of demo scenarios/prompts (currently includes placeholders and inconsistent step numbering).
demos/integration_with_deepagents_code/.gitignore Ignores local virtualenv/log/output folders for the demo directory.
demos/integration_with_deepagents_code/.deepagents/skills/python-mcp-sdk-skill/SKILL.md Adds guidance/template for implementing a Python MCP stdio server with FastMCP.
demos/integration_with_deepagents_code/.deepagents/agents/mcp-tester/AGENTS.md Defines a focused subagent profile to validate an MCP server via static and short runtime checks.
demos/integration_with_deepagents_code/.deepagents/.mcp.json Adds a local MCP server config entry pointing to mcp_server/time_mcp_server.py.
Review details

Suppressed comments (9)

demos/integration_with_deepagents_code/README.md:80

  • This line references Step 1/3/4, but those step headings don’t exist in the document, which makes the instructions ambiguous.
Use this profile for non-MCP steps (Step 1, Step 3, Step 4):

demos/integration_with_deepagents_code/README.md:89

  • This line references “Step 6”, but there is no Step 6 section in the document, so readers can’t tell when to use this profile.
Use this profile for MCP steps (Step 2 and Step 6):

demos/integration_with_deepagents_code/README.md:111

  • This section is titled “Step 2” even though the earlier numbered steps aren’t present (and “Step 3” appears above), so the document’s step ordering is inconsistent.
## Step 2: MCP server creation

demos/integration_with_deepagents_code/README.md:109

  • User-facing documentation shouldn’t ship with placeholder text; it makes the demo incomplete and harder to follow.
PLACEHOLDER FOR SCREENSHOT

demos/integration_with_deepagents_code/README.md:115

  • User-facing documentation shouldn’t ship with placeholder text; it makes the demo incomplete and harder to follow.
PLACEHOLDER FOR SCREENSHOT

demos/integration_with_deepagents_code/README.md:126

  • User-facing documentation shouldn’t ship with placeholder text; it makes the demo incomplete and harder to follow.
PLACEHOLDER FOR SCREENSHOT

demos/integration_with_deepagents_code/README.md:157

  • User-facing documentation shouldn’t ship with placeholder text; it makes the demo incomplete and harder to follow.
PLACEHOLDER FOR SCREENSHOT

demos/integration_with_deepagents_code/README.md:164

  • User-facing documentation shouldn’t ship with placeholder text; it makes the demo incomplete and harder to follow.
PLACEHOLDER FOR SCREENSHOT

demos/integration_with_deepagents_code/README.md:188

  • User-facing documentation shouldn’t ship with placeholder text; it makes the demo incomplete and harder to follow.
PLACEHOLDER FOR SCREENSHOT
  • Files reviewed: 5/5 changed files
  • Comments generated: 5
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

---
name: python-mcp-sdk-skill
description: "Guidance for implementing Python MCP SDK stdio servers with FastMCP, robust validation, and deterministic tool output."
license: MIT
Comment thread demos/integration_with_deepagents_code/README.md Outdated
Comment thread demos/integration_with_deepagents_code/README.md Outdated
Comment thread demos/integration_with_deepagents_code/README.md Outdated
Comment thread demos/integration_with_deepagents_code/README.md Outdated

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

One or more issues must be addressed before approval.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Review details

Suppressed comments (4)

demos/integration_with_deepagents_code/.gitignore:3

  • The validation instructions in AGENTS.md run python -m py_compile, which creates __pycache__ under the generated server directory. This ignore file does not exclude that bytecode, so each validation run adds generated artifacts to the demo's git working tree; add __pycache__/.
outputs/

demos/integration_with_deepagents_code/README.md:252

  • This MCP-task example repeats invalid dcode filesystem tool names (list_dir, grep_search, and file_search), so the command fails argument validation instead of starting. Use the actual names exposed by dcode's filesystem middleware.
  --allow-fs-tools read_file,list_dir,grep_search,file_search

demos/integration_with_deepagents_code/README.md:116

  • execute is enabled and the shell allow-list includes python, python3, and timeout; these can run arbitrary Python or wrap another executable. As a result, this is not a safety boundary for an agent running on the host and can bypass the intended filesystem/tool restrictions. Run dcode in a real sandbox/container, or explicitly document that this command grants arbitrary host-code execution instead of presenting the list as command safety.
  -S python,python3,timeout,cat,grep,ls \

demos/integration_with_deepagents_code/README.md:118

  • --trust-project-mcp skips DeepAgents Code's project-MCP approval gate and automatically trusts the committed stdio command, which executes the repo-controlled mcp_server/time_mcp_server.py. Running this from an untrusted checkout can therefore execute arbitrary Python before the user reviews the server; omit this bypass and have the user approve only time-server, or add a prominent warning to audit the project config and generated file first.
  --trust-project-mcp
  • Files reviewed: 6/17 changed files
  • Comments generated: 5
  • Review effort level: Lite

Comment thread demos/integration_with_deepagents_code/README.md
Comment thread demos/integration_with_deepagents_code/README.md Outdated
Comment on lines +94 to +95
python -m venv .env
source .env/bin/activate
Comment thread demos/integration_with_deepagents_code/README.md Outdated
Comment thread demos/integration_with_deepagents_code/README.md Outdated

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

Moderate issues remain with runtime validation, environment setup, and OVMS version compatibility.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Review details

Suppressed comments (3)

demos/integration_with_deepagents_code/.deepagents/agents/mcp-tester/AGENTS.md:19

  • The only runtime check starts the script and waits for up to two seconds; it never performs MCP initialization or calls tools/list/tools/call. The 124 rule can therefore report PASS for a server that is hung, slow to initialize, or unable to serve tools, so this does not verify the runtime behavior claimed by the demo. Add a small MCP stdio readiness/tool-call probe, or narrow the claim to process startup.
- Run a short startup check: `timeout 2s python <server_path>`.

demos/integration_with_deepagents_code/.deepagents/skills/python-mcp-sdk-skill/SKILL.md:54

  • The required time tool returns the current time, but this quality rule requires all outputs to be deterministic. Those instructions conflict and can lead the agent to freeze or mock the timestamp. Require a stable machine-readable format/schema instead, while explicitly allowing the time value to vary.
- Keep tool outputs deterministic and machine-readable.

demos/integration_with_deepagents_code/README.md:43

  • The Qwen3.8-27B model used here is documented in demos/continuous_batching/speculative_decoding/README.md:29 as requiring OVMS 2026.4 or a weekly build, but these commands use the floating latest-gpu tag. On hosts whose tag predates that support, the model deployment will fail; use an explicit compatible tag or state and enforce the required OVMS version consistently for all five commands.
  -v ${HOME}/models:/models openvino/model_server:latest-gpu \
  --pull --source_model OpenVINO/Qwen3.8-27B-int4-ov --task text_generation --model_repository_path /models
  • Files reviewed: 6/17 changed files
  • Comments generated: 3
  • Review effort level: Lite

Comment on lines +94 to +96
python -m venv .env
source .env/bin/activate
cd demos/integration_with_deepagents_code
@@ -0,0 +1,3 @@
.env/
logs/
outputs/
Comment on lines +122 to +125
- `--allow-fs-tools`: controls exposed local tools. `execute` is needed for runtime checks.
- `-S ...`: shell allow-list for `execute` command safety.
- `--no-interpreter`: disables js_eval middleware.
- `--trust-project-mcp`: auto-trusts project MCP configuration.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants