In-product <> IDE agent communication loop needs to improve. Today, users enter products and get faced with a barrage of prompts to copy/paste and deeplinks, with the result being a wild west scramble of install operations and prompt executions. It's a mess. IDEs are heading more in the direction of a junction box for business operations, not just for authoring code. What does this future look like? Here are some ideas to improve the IDE platform for products to build upon:
1. Deeplinks should include a parameter to control execution mode
Low-hanging fruit. Let products specify agent mode or plan mode right off the bat.
2. Structured callbacks
When clicking a deeplink to an IDE from inside a product, there is no easy way of knowing when the agent IDE is finished with its task. Specifying a web request callback in a prompt is awkward and looks dangerous, and actually can be malicious! Adding safe, first-class support for products to know when an agent session they initiated is completed would be very cool. Add the ability to specify an output schema as part of the callback. IDE can detect suspicious requests.
Personally, I would call these DeepPrompts.
3. Structured output in agent sessions
Expose basic UI primitives that we can render in the chat UI.
4. More control over ephemeral output
Expanding on above, give products more control over producing interactive plan screens in the IDE that the agent can update. Canvas is nice but slow to construct. HTML is already great at this. Let products expose HTML templates that IDE agents can render & fill in the blanks as a plan is being executed. Allow us to expose custom primitives or CSS for the IDE agent to use when using this interface. Think about visual feedback for complex plan execution, multi-step processes etc.
5. Sign-in with [Cursor, Claude Code, etc], repository access delegation
Products don't always need access to a whole repository and don't want to manage that. But being able to read a repository can help products create more tailored experiences for a business. Allowing products to execute remote read-only prompts that respect an organization's data exfiltration rules would allow tight product integration without giving the product direct access to your codebase. Think of it like a repository gateway, a proxy with agent observability, access logs, and rules.
Bonus points if a product can kick-off a prompt and have [IDE] manage & open a PR (again, with callbacks). All without the product needing direct repository read access, and saves the user from leaving the product into an IDE. Also allows engineers to make the connection once, and non-technical folks to use IDE-AI features in-product.
Bonus if there is an output streaming SDK that makes it easy to render the allowed outputs of these remote sessions inline.
6. Plugin package installation deeplinks
Instead of having to wrangle the CLI, MCP, skills installations & setup, including multiple browser jump flows for first time 3rd party product setup, make in-IDE config packages the source of truth for first time setup. Make it installable via deeplink, and have a structured flow for integrating with the IDE & project setup. Reduce browser jumps as much as possible. Additionally, allow specifying this package installation inline with a deeplink prompt; <package required id="knock" />.