Skip to content

feat(cli): deepagents deploy#2491

Merged
Mason Daugherty (mdrxy) merged 20 commits intomainfrom
sr/deepagents-deploy-spec
Apr 9, 2026
Merged

feat(cli): deepagents deploy#2491
Mason Daugherty (mdrxy) merged 20 commits intomainfrom
sr/deepagents-deploy-spec

Conversation

@sydney-runkle
Copy link
Copy Markdown
Collaborator

@sydney-runkle Sydney Runkle (sydney-runkle) commented Apr 6, 2026

Adds new deepagents deploy command. Documentation

Project layout

src/
  AGENTS.md        # required — system prompt + read-only /memories/AGENTS.md
  skills/          # optional — seeded under /skills/
  mcp.json         # optional — HTTP/SSE MCP servers
  deepagents.toml

deepagents.toml

[agent]
name = "my-agent"
model = "anthropic:claude-sonnet-4-6"

# [sandbox] is optional — omit to run tools in-process.
[sandbox]
provider = "langsmith"   # none | langsmith | daytona | modal | runloop
scope    = "thread"      # thread | assistant
# template = "deepagents-deploy"
# image    = "python:3"

Skills, MCP servers, and model deps are auto-detected.

CLI

deepagents init                         # scaffold deepagents.toml in cwd
deepagents dev    --config src/deepagents.toml [--port 2024]
deepagents deploy --config src/deepagents.toml [--dry-run]

Runtime

  • System prompt: src/AGENTS.md verbatim, baked in at build time.
  • Memories: /memories/AGENTS.md in the LangGraph store, namespace (assistant_id, "memories"). Read-only at runtime — edit the source file and redeploy.
  • Skills: /skills/<skill>/... in the store, namespace (assistant_id, "skills"). Also read-only.
  • Sandbox: default backend. Per-thread cache by default; set [sandbox].scope = "assistant" to share one sandbox across all threads of an assistant. Omit [sandbox] entirely to fall back to an in-process StateBackend.
  • MCP: HTTP/SSE only. Stdio is rejected at bundle time.

Gotchas

  • /memories/ and /skills/ are read-only. Edit source files and redeploy.
  • deepagents deploy creates a new revision on every invocation (full cloud rebuild). Use deepagents dev for iteration.
  • The in-process sandbox cache does not survive process restarts; thread-scoped sandboxes get re-provisioned if the server recycles.
  • Custom Python tools are not supported — use MCP servers.

@github-actions github-actions Bot added cli Related to `deepagents-cli` internal User is a member of the `langchain-ai` GitHub organization size: XL 1000+ LOC labels Apr 6, 2026
corridor-security[bot]

This comment was marked as outdated.

@github-actions github-actions Bot added the deepagents Related to the `deepagents` SDK / agent harness label Apr 8, 2026
Copy link
Copy Markdown
Contributor

@hari-dhanushkodi hari-dhanushkodi left a comment

Choose a reason for hiding this comment

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

thanks for implementing!!

Comment thread libs/cli/deepagents_cli/deploy/commands.py Outdated
print(f"Running: {' '.join(cmd)}")
print()

result = subprocess.run(cmd, cwd=str(build_dir), capture_output=True, text=True)
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.

this command seems to be ignoring colors + interactive input.. if you run langgraph deploy directly you will be prompted for your api key, eg:

❯ langgraph deploy -c /var/folders/sv/n1qqfjs90h73nr_87d7bprwh0000gn/T/deepagents-deploy-2s8d0lqh/langgraph.json --name deepagents-deploy-coding-agent --verbose
Note: 'langgraph deploy' is in beta. Expect frequent updates and improvements.

⚠️  Security Recommendation: Consider switching to Wolfi Linux for enhanced security.
   Wolfi is a security-oriented, minimal Linux distribution designed for containers.
   To switch, add '"image_distro": "wolfi"' to your langgraph.json config file.

No LangSmith API key found. Create one at Settings > API Keys in LangSmith.
Enter LangSmith API key:

I actually do think this is an important part of the experience, but I'm not sure how to fix. I couldn't get it working locally :( Maybe we have to pull in langgraph-cli code and call it directly isntead of subprocess? idk

Comment thread libs/cli/deepagents_cli/deploy/templates.py
Comment thread libs/cli/deepagents_cli/deploy/templates.py Outdated
Comment thread libs/cli/deepagents_cli/deploy/commands.py
Comment thread libs/cli/deepagents_cli/deploy/commands.py
Comment thread libs/cli/deepagents_cli/deploy/templates.py Outdated
Comment thread deepagents-deploy.md
Comment thread deepagents-deploy.md Outdated
Comment thread deepagents-deploy.md Outdated
Comment thread deepagents-deploy.md Outdated
Comment thread deepagents-deploy.md Outdated
Comment thread deepagents-deploy.md
Comment thread deepagents-deploy.md Outdated
@github-actions github-actions Bot added the dependencies Pull requests that update a dependency file label Apr 9, 2026
@sydney-runkle Sydney Runkle (sydney-runkle) changed the title wip: deepagents deploy feat(deepagents-cli): deepagents-deploy Apr 9, 2026
@github-actions github-actions Bot added the feature New feature/enhancement or request for one label Apr 9, 2026
@mdrxy Mason Daugherty (mdrxy) changed the title feat(deepagents-cli): deepagents-deploy feat(cli): deepagents-deploy Apr 9, 2026
Comment thread libs/cli/deepagents_cli/ui.py Outdated
Comment thread libs/cli/deepagents_cli/integrations/sandbox_factory.py
@mdrxy Mason Daugherty (mdrxy) changed the title feat(cli): deepagents-deploy feat(cli): deepagents deploy Apr 9, 2026
@mdrxy Mason Daugherty (mdrxy) merged commit 01dc60e into main Apr 9, 2026
8 checks passed
@mdrxy Mason Daugherty (mdrxy) deleted the sr/deepagents-deploy-spec branch April 9, 2026 15:08
Mason Daugherty (mdrxy) added a commit that referenced this pull request Apr 9, 2026
> [!CAUTION]
> Merging this PR will automatically publish to **PyPI** and create a
**GitHub release**.

For the full release process, see
[`.github/RELEASING.md`](https://github.com/langchain-ai/deepagents/blob/main/.github/RELEASING.md).

---

_Everything below this line will be the GitHub release body._

---


##
[0.0.36](deepagents-cli==0.0.35...deepagents-cli==0.0.36)
(2026-04-09)

### Features

* `deepagents deploy`
([#2491](#2491))
([01dc60e](01dc60e))
* Warn on missing tavily key, add `/notifications`
([#2555](#2555))
([3dff3ed](3dff3ed))

### Bug Fixes

* Fail fast on missing provider credentials
([#2554](#2554))
([50fb8ae](50fb8ae))
* Fix mktemp template in debug script for macOS
([#2603](#2603))
([63fa537](63fa537))

---

_Everything above this line will be the GitHub release body._

---

> [!NOTE]
> A **New Contributors** section is appended to the GitHub release notes
automatically at publish time (see [Release
Pipeline](https://github.com/langchain-ai/deepagents/blob/main/.github/RELEASING.md#release-pipeline),
step 2).

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Mason Daugherty <github@mdrxy.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cli Related to `deepagents-cli` deepagents Related to the `deepagents` SDK / agent harness dependencies Pull requests that update a dependency file feature New feature/enhancement or request for one internal User is a member of the `langchain-ai` GitHub organization size: XL 1000+ LOC

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants