Skip to content

feat(studio): Show jobs on the Code Agent's Artifacts Panel #356

Open
htolentino-nvidia wants to merge 2 commits into
mainfrom
studio-show-jobs-code-agent/htolentino
Open

feat(studio): Show jobs on the Code Agent's Artifacts Panel #356
htolentino-nvidia wants to merge 2 commits into
mainfrom
studio-show-jobs-code-agent/htolentino

Conversation

@htolentino-nvidia

@htolentino-nvidia htolentino-nvidia commented Jun 16, 2026

Copy link
Copy Markdown
Contributor
image

Summary by CodeRabbit

  • New Features

    • Job artifacts are now captured and displayed in the coding agent chat history and artifacts panel.
    • Job artifacts display with links to detailed job progress information in the Studio UI.
  • Improvements

    • Coding agent guidance improved to prioritize NeMo Studio tools and UI over CLI commands when recommending follow-up actions.

@htolentino-nvidia htolentino-nvidia requested review from a team as code owners June 16, 2026 20:43
@github-actions github-actions Bot added the feat label Jun 16, 2026
@coderabbitai

coderabbitai Bot commented Jun 16, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

Adds end-to-end job artifact tracking for the Claude Code chat agent. New ChatJobArtifactResponse (Python) and ClaudeCodeChatJobArtifact (TypeScript) types are introduced. Backend record_tool_artifacts routes job_progress and studio_link (destination=job) tool inputs into job artifacts. Frontend state management, API parsing, and history panel rendering are extended to handle jobs. Agent system prompts are updated to prefer Studio UI over CLI commands.

Changes

Job Artifact Feature

Layer / File(s) Summary
Job artifact type contracts
web/.../ClaudeCodeChatRoute/types.ts, services/studio/src/nmp/studio/coding_agent_artifacts.py
ClaudeCodeChatJobArtifact interface and ChatJobArtifactResponse Pydantic model introduced; ClaudeCodeChatArtifacts and ChatArtifactsResponse extended with jobs arrays.
Backend job artifact recording
services/studio/src/nmp/studio/coding_agent_artifacts.py
_upsert_job_artifact and _append_job_artifact helpers added; record_tool_artifacts updated to route studio_link (destination="job") and job_progress inputs into artifacts.jobs.
Frontend artifact state management
web/.../ClaudeCodeChatRoute/artifacts.ts
jobs initialized in createEmptyClaudeCodeChatArtifacts and cloneArtifacts; upsertJob, buildJobHref, recordJobArtifact helpers added; recordToolArtifacts handles job_progress/__job_progress inputs.
API deserialization of job artifacts
web/.../ClaudeCodeChatRoute/api.ts
parseJobArtifact helper added; parseChatArtifacts extended to map value.jobs into the returned artifacts object.
History panel job artifact rendering
web/.../ClaudeCodeChatRoute/ClaudeCodeHistoryPanel.tsx
getJobArtifactHref and JobArtifacts renderer added; hasArtifacts guard and ClaudeCodeArtifactsPane updated to include job artifact display.
Agent prompt guidance
services/studio/src/nmp/studio/coding_agent_mcp_tools.py, services/studio/src/nmp/studio/coding_agents.py
System prompts updated to prioritize NeMo Studio MCP tools/views over CLI commands; CLI use restricted to cases without a Studio UI equivalent or explicit user request.
Tests
services/studio/tests/unit/test_coding_agents.py
Fixture adds mcp__nemo_studio__job_progress tool-use event; expected chat_artifacts updated with jobs block; streaming test asserts new prompt guidance strings.

Possibly related PRs

  • NVIDIA-NeMo/nemo-platform#153: Introduces ClaudeCodeHistoryPanel and history plumbing that this PR extends to display job artifacts.
  • NVIDIA-NeMo/nemo-platform#333: Wires ChatArtifactsResponse into session-history responses via coding_agent_artifacts, which this PR extends with the jobs field.
  • NVIDIA-NeMo/nemo-platform#347: Requires mcp__nemo_studio__job_progress tool calls per launched job, directly feeding this PR's job_progress artifact recording.

Suggested reviewers

  • dmariali
  • steramae-nvidia
🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Title check ✅ Passed Title clearly and specifically summarizes the main change: adding job artifact display to the Code Agent's Artifacts Panel.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch studio-show-jobs-code-agent/htolentino

Comment @coderabbitai help to get the list of available commands and usage tips.

Signed-off-by: Henrique Tolentino <htolentino@nvidia.com>
@htolentino-nvidia htolentino-nvidia force-pushed the studio-show-jobs-code-agent/htolentino branch from d9e6570 to 1ff12b7 Compare June 22, 2026 13:56
@htolentino-nvidia htolentino-nvidia changed the title feat(studio): Improve code agent interactions and show jobs on the artifacts panel feat(studio): Show jobs on the Code Agent's Artifacts Panel Jun 22, 2026
@github-actions

github-actions Bot commented Jun 22, 2026

Copy link
Copy Markdown
Contributor
Suite Lines Covered Line Rate Branch Rate
Unit Tests 20042/26517 75.6% 60.9%
Integration Tests 11694/25286 46.2% 19.8%

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants