microsoft / vscode

Visual Studio Code
https://code.visualstudio.com
MIT License
162.96k stars 28.77k forks source link

Feature Request: Add inlineChat API to @vscode/dts for Prototyping #228958

Open 32teeth opened 1 week ago

32teeth commented 1 week ago

Feature Request: Add inlineChat API to @vscode/dts for Prototyping

Currently, the inlineChat feature is available in the workbench, and it's a highly useful tool for enhancing interactive user experiences. However, there is currently no available API in @vscode/dts for developers to prototype with this functionality.

Request

We would like to request the inclusion of the inlineChat API in the vscode.proposed.d.ts file. This would allow developers to prototype and experiment with inlineChat functionality using npx @vscode/dts main. Ideally, the type definitions would be included in something like vscode.proposed.inlineChat.d.ts.

Rationale

By providing early access to the inlineChat API for prototyping, the VS Code extension developer community could:

Thanks for considering this request, and we look forward to the opportunity to experiment with this exciting feature!

### Tasks
jrieken commented 1 week ago

A very rough proposal exists, but it is buried here: https://github.com/microsoft/vscode/blob/06fc5cd29f1fc6074f8cb033a6578741d2c398f1/src/vscode-dts/vscode.proposed.chatParticipantPrivate.d.ts#L32-L39

You also need to add (and ignore warnings) to package.json#chatParticipants the following

// .. participant stuff
"locations": [
    "editor"
],
qiyx2019 commented 1 week ago

Feature Request: Add inlineChat API to @vscode/dts for Prototyping

功能请求:将 inlineChat API 添加到 @vscode/dts 以进行原型设计 Currently, the inlineChat feature is available in the workbench, and it's a highly useful tool for enhancing interactive user experiences. However, there is currently no available API in @vscode/dts for developers to prototype with this functionality.目前,Workbench 中提供了 inlineChat 功能,它是增强交互式用户体验的非常有用的工具。但是,@vscode/dts 中目前没有可用的 API 供开发人员使用此功能进行原型设计。

Request 请求

We would like to request the inclusion of the inlineChat API in the vscode.proposed.d.ts file. This would allow developers to prototype and experiment with inlineChat functionality using npx @vscode/dts main. Ideally, the type definitions would be included in something like vscode.proposed.inlineChat.d.ts.我们想请求在 vscode.proposed.d.ts 文件中包含 inlineChat API。这将允许开发人员使用 npx @vscode/dts maininlineChat 功能进行原型设计和试验。理想情况下,类型定义将包含在类似 vscode.proposed.inlineChat.d.ts .

Rationale 理由

By providing early access to the inlineChat API for prototyping, the VS Code extension developer community could:通过提供对 inlineChat API 的早期访问以进行原型设计,VS Code 扩展开发人员社区可以:

  • Prototype with cutting-edge features in real-time.实时使用尖端功能进行原型设计。
  • Provide valuable feedback on the API before its official release.在 API 正式发布之前提供有关 API 的宝贵反馈。
  • Develop innovative extensions that leverage in-editor interactivity.开发利用编辑器内交互性的创新扩展。

Thanks for considering this request, and we look forward to the opportunity to experiment with this exciting feature!感谢您考虑此请求,我们期待着有机会尝试这一令人兴奋的功能!

Tasks 任务

Beta 试用版 Give feedback 提供反馈 No tasks being tracked yet. 尚未跟踪任何任务。

  1. [ ]

    Options

       * Convert to issue
       * Toggle completion
       * Rename
       * Remove

how to use inline-chat in my vscode-ext?

qiyx2019 commented 1 week ago

Can I call the inline-chat api directly from a custom vscode ext? @jrieken

32teeth commented 1 week ago

@qiyx2019 Can I call the inline-chat api directly from a custom vscode ext? @jrieken

As i see it, it shouldn't be much different that calling QuickPick or InputBox. Its implementation should be straightforward

qiyx2019 commented 1 week ago

I don't know what I should do. It seems that this api is not exposed in the official version. Can you show a demo? Thank you @32teeth

32teeth commented 2 days ago

I don't know what I should do. It seems that this api is not exposed in the official version. Can you show a demo? Thank you @32teeth

I think @jrieken illustrated some usage

But you're right. Maybe a more solid demo or usage example

Seems it's currently exclusive to @github copilot extension

You could theoretically download the VSIX file, change the extension to .zip and do some reverse engineering