<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>VS Code on Producthunt daily</title>
        <link>https://producthunt.programnotes.cn/en/tags/vs-code/</link>
        <description>Recent content in VS Code on Producthunt daily</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>en</language>
        <lastBuildDate>Tue, 09 Sep 2025 15:28:21 +0800</lastBuildDate><atom:link href="https://producthunt.programnotes.cn/en/tags/vs-code/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>kilocode</title>
        <link>https://producthunt.programnotes.cn/en/p/kilocode/</link>
        <pubDate>Tue, 09 Sep 2025 15:28:21 +0800</pubDate>
        
        <guid>https://producthunt.programnotes.cn/en/p/kilocode/</guid>
        <description>&lt;img src="https://images.unsplash.com/photo-1727949395650-5315f1c592c2?ixid=M3w0NjAwMjJ8MHwxfHJhbmRvbXx8fHx8fHx8fDE3NTc0MDI4NTR8&amp;ixlib=rb-4.1.0" alt="Featured image of post kilocode" /&gt;&lt;h1 id=&#34;kilo-orgkilocode&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/Kilo-Org/kilocode&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Kilo-Org/kilocode&lt;/a&gt;
&lt;/h1&gt;&lt;p align=&#34;center&#34;&gt;
  &lt;a href=&#34;https://marketplace.visualstudio.com/items?itemName=kilocode.Kilo-Code&#34;&gt;&lt;img src=&#34;https://img.shields.io/visual-studio-marketplace/v/kilocode.Kilo-Code.svg?label=VS%20Code%20Marketplace&#34; alt=&#34;VS Code Marketplace&#34;&gt;&lt;/a&gt;
  &lt;a href=&#34;https://x.com/kilo_code&#34;&gt;&lt;img src=&#34;https://img.shields.io/twitter/follow/kilo_code?style=flat&amp;logo=x&amp;color=555&#34; alt=&#34;X (Twitter)&#34;&gt;&lt;/a&gt;
  &lt;a href=&#34;https://blog.kilocode.ai&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/Blog-555?style=flat&amp;logo=substack&amp;logoColor=white&#34; alt=&#34;Substack Blog&#34;&gt;&lt;/a&gt;
  &lt;a href=&#34;https://kilocode.ai/discord&#34;&gt;&lt;img src=&#34;https://img.shields.io/discord/1349288496988160052?style=flat&amp;logo=discord&amp;logoColor=white&#34; alt=&#34;Discord&#34;&gt;&lt;/a&gt;
  &lt;a href=&#34;https://www.reddit.com/r/kilocode/&#34;&gt;&lt;img src=&#34;https://img.shields.io/reddit/subreddit-subscribers/kilocode?style=flat&amp;logo=reddit&amp;logoColor=white&#34; alt=&#34;Reddit&#34;&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;h1 id=&#34;-kilo-code&#34;&gt;🚀 Kilo Code
&lt;/h1&gt;&lt;blockquote&gt;
&lt;p&gt;Open-source VS Code AI agent. We frequently merge features from open-source projects, such as &lt;a class=&#34;link&#34; href=&#34;https://github.com/RooVetGit/Roo-Code&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Roo Code&lt;/a&gt; and &lt;a class=&#34;link&#34; href=&#34;https://github.com/cline/cline&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Cline&lt;/a&gt;, while building our own vision.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul&gt;
&lt;li&gt;✨ Generate code from natural language&lt;/li&gt;
&lt;li&gt;✅ Checks its own work&lt;/li&gt;
&lt;li&gt;🧪 Run terminal commands&lt;/li&gt;
&lt;li&gt;🌐 Automate the browser&lt;/li&gt;
&lt;li&gt;🤖 Latest AI models&lt;/li&gt;
&lt;li&gt;🎁 API keys optional&lt;/li&gt;
&lt;li&gt;💡 &lt;strong&gt;Get $20 in bonus credits when you top-up for the first time&lt;/strong&gt; Credits can be used with 400+ models like Gemini 2.5 Pro, Claude 4 Sonnet &amp;amp; Opus, and GPT-5&lt;/li&gt;
&lt;/ul&gt;
&lt;p align=&#34;center&#34;&gt;
  &lt;img src=&#34;https://raw.githubusercontent.com/Kilo-Org/kilocode/refs/heads/main/kilo.gif&#34; width=&#34;100%&#34; /&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://kilocode.ai/vscode-marketplace?utm_source=Readme&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;VS Code Marketplace&lt;/a&gt; (download)&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://kilocode.ai&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Official KiloCode.ai Home page&lt;/a&gt; (learn more)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;key-features&#34;&gt;Key Features
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Code Generation:&lt;/strong&gt; Generate code using natural language.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Task Automation:&lt;/strong&gt; Automate repetitive coding tasks.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Automated Refactoring:&lt;/strong&gt; Refactor and improve existing code.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;MCP Server Marketplace&lt;/strong&gt;: Easily find, and use MCP servers to extend the agent capabilities.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Multi Mode&lt;/strong&gt;: Plan with Architect, Code with Coder, and Debug with Debugger, and make your own custom modes.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;how-to-get-started-with-kilo-code&#34;&gt;How to get started with Kilo Code
&lt;/h2&gt;&lt;h2 id=&#34;how-to-get-started-with-kilo-code-1&#34;&gt;How to get started with Kilo Code
&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;Install the Kilo Code extension from the &lt;a class=&#34;link&#34; href=&#34;https://marketplace.visualstudio.com/items?itemName=kilocode.Kilo-Code&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;VS Code Marketplace&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Create your account to access 400+ cutting-edge AI models including Gemini 2.5 Pro, Claude 4 Sonnet &amp;amp; Opus, and GPT-5 – with transparent pricing that matches provider rates exactly.&lt;/li&gt;
&lt;li&gt;Start coding with AI that adapts to your workflow. Watch our quick-start guide to see Kilo Code in action:&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://youtu.be/pqGfYXgrhig&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.youtube.com/vi/pqGfYXgrhig/maxresdefault.jpg&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Watch the video&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;difference-between-kilo-code-roo-code-and-cline&#34;&gt;Difference between Kilo Code, Roo Code and Cline
&lt;/h2&gt;&lt;p&gt;Kilo Code started as a fork of Roo Code, which itself is a fork of Cline. We frequently merge features from these open-source projects and contribute improvements back. Built on these foundations, Kilo Code is independently developed with our own vision for AI coding agents.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;No need to fiddle with API keys, Kilo Code ships with the latest AI models plugged in, including Gemini 2.5 Pro, Claude 4 Sonnet &amp;amp; Opus, and GPT-5&lt;/li&gt;
&lt;li&gt;MCP Server Marketplace: Easily find, and use MCP servers to extend the agent capabilities.&lt;/li&gt;
&lt;li&gt;Autocomplete (experimental)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Kilo Code is a direct fork from Roo Code, and also includes the following features from Cline (and our own features):&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;System notifications: Get notified when the agent is done with a task.&lt;/li&gt;
&lt;li&gt;Easy model connection: batteries included.&lt;/li&gt;
&lt;li&gt;Editing previous messages&lt;/li&gt;
&lt;li&gt;Assisted commit messages: we write git commit messages for you based on what changed&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;extension-development&#34;&gt;Extension Development
&lt;/h2&gt;&lt;p&gt;For details on building and developing the extension, see &lt;a class=&#34;link&#34; href=&#34;https://producthunt.programnotes.cn/DEVELOPMENT.md&#34; &gt;DEVELOPMENT.md&lt;/a&gt;&lt;/p&gt;
</description>
        </item>
        <item>
        <title>edit</title>
        <link>https://producthunt.programnotes.cn/en/p/edit/</link>
        <pubDate>Fri, 27 Jun 2025 15:29:25 +0800</pubDate>
        
        <guid>https://producthunt.programnotes.cn/en/p/edit/</guid>
        <description>&lt;img src="https://images.unsplash.com/photo-1649902241864-eeba8d1adffd?ixid=M3w0NjAwMjJ8MHwxfHJhbmRvbXx8fHx8fHx8fDE3NTEwMDkzNTV8&amp;ixlib=rb-4.1.0" alt="Featured image of post edit" /&gt;&lt;h1 id=&#34;microsoftedit&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/microsoft/edit&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;microsoft/edit&lt;/a&gt;
&lt;/h1&gt;&lt;h1 id=&#34;edit&#34;&gt;Edit
&lt;/h1&gt;&lt;p&gt;A simple editor for simple needs.&lt;/p&gt;
&lt;p&gt;This editor pays homage to the classic &lt;a class=&#34;link&#34; href=&#34;https://en.wikipedia.org/wiki/MS-DOS_Editor&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;MS-DOS Editor&lt;/a&gt;, but with a modern interface and input controls similar to VS Code. The goal is to provide an accessible editor that even users largely unfamiliar with terminals can easily use.&lt;/p&gt;
&lt;h2 id=&#34;installation&#34;&gt;Installation
&lt;/h2&gt;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://repology.org/project/microsoft-edit/versions&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://repology.org/badge/vertical-allrepos/microsoft-edit.svg?exclude_unsupported=1&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Packaging status&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;You can also download binaries from &lt;a class=&#34;link&#34; href=&#34;https://github.com/microsoft/edit/releases/latest&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;our Releases page&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows
&lt;/h3&gt;&lt;p&gt;You can install the latest version with WinGet:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-powershell&#34; data-lang=&#34;powershell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;winget&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;install&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Microsoft&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;py&#34;&gt;Edit&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;build-instructions&#34;&gt;Build Instructions
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.rust-lang.org/tools/install&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Install Rust&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Install the nightly toolchain: &lt;code&gt;rustup install nightly&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;Alternatively, set the environment variable &lt;code&gt;RUSTC_BOOTSTRAP=1&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Clone the repository&lt;/li&gt;
&lt;li&gt;For a release build, run: &lt;code&gt;cargo build --config .cargo/release.toml --release&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;notes-to-package-maintainers&#34;&gt;Notes to Package Maintainers
&lt;/h2&gt;&lt;h3 id=&#34;package-naming&#34;&gt;Package Naming
&lt;/h3&gt;&lt;p&gt;The canonical executable name is &amp;ldquo;edit&amp;rdquo; and the alternative name is &amp;ldquo;msedit&amp;rdquo;.
We&amp;rsquo;re aware of the potential conflict of &amp;ldquo;edit&amp;rdquo; with existing commands and recommend alternatively naming packages and executables &amp;ldquo;msedit&amp;rdquo;.
Names such as &amp;ldquo;ms-edit&amp;rdquo; should be avoided.
Assigning an &amp;ldquo;edit&amp;rdquo; alias is recommended, if possible.&lt;/p&gt;
&lt;h3 id=&#34;icu-library-name-soname&#34;&gt;ICU library name (SONAME)
&lt;/h3&gt;&lt;p&gt;This project &lt;em&gt;optionally&lt;/em&gt; depends on the ICU library for its Search and Replace functionality.
By default, the project will look for a SONAME without version suffix:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Windows: &lt;code&gt;icuuc.dll&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;macOS: &lt;code&gt;libicuuc.dylib&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;UNIX, and other OS: &lt;code&gt;libicuuc.so&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If your installation uses a different SONAME, please set the following environment variable at build time:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;EDIT_CFG_ICUUC_SONAME&lt;/code&gt;:
For instance, &lt;code&gt;libicuuc.so.76&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;EDIT_CFG_ICUI18N_SONAME&lt;/code&gt;:
For instance, &lt;code&gt;libicui18n.so.76&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Additionally, this project assumes that the ICU exports are exported without &lt;code&gt;_&lt;/code&gt; prefix and without version suffix, such as &lt;code&gt;u_errorName&lt;/code&gt;.
If your installation uses versioned exports, please set:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;EDIT_CFG_ICU_CPP_EXPORTS&lt;/code&gt;:
If set to &lt;code&gt;true&lt;/code&gt;, it&amp;rsquo;ll look for C++ symbols such as &lt;code&gt;_u_errorName&lt;/code&gt;.
Enabled by default on macOS.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;EDIT_CFG_ICU_RENAMING_VERSION&lt;/code&gt;:
If set to a version number, such as &lt;code&gt;76&lt;/code&gt;, it&amp;rsquo;ll look for symbols such as &lt;code&gt;u_errorName_76&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Finally, you can set the following environment variables:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;EDIT_CFG_ICU_RENAMING_AUTO_DETECT&lt;/code&gt;:
If set to &lt;code&gt;true&lt;/code&gt;, the executable will try to detect the &lt;code&gt;EDIT_CFG_ICU_RENAMING_VERSION&lt;/code&gt; value at runtime.
The way it does this is not officially supported by ICU and as such is not recommended to be relied upon.
Enabled by default on UNIX (excluding macOS) if no other options are set.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;To test your settings, run &lt;code&gt;cargo test&lt;/code&gt; again but with the &lt;code&gt;--ignored&lt;/code&gt; flag. For instance:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cargo &lt;span class=&#34;nb&#34;&gt;test&lt;/span&gt; -- --ignored
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;</description>
        </item>
        <item>
        <title>typescript-go</title>
        <link>https://producthunt.programnotes.cn/en/p/typescript-go/</link>
        <pubDate>Wed, 28 May 2025 15:29:20 +0800</pubDate>
        
        <guid>https://producthunt.programnotes.cn/en/p/typescript-go/</guid>
        <description>&lt;img src="https://images.unsplash.com/photo-1540840054964-107a689b509c?ixid=M3w0NjAwMjJ8MHwxfHJhbmRvbXx8fHx8fHx8fDE3NDg0MTcyOTd8&amp;ixlib=rb-4.1.0" alt="Featured image of post typescript-go" /&gt;&lt;h1 id=&#34;microsofttypescript-go&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/microsoft/typescript-go&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;microsoft/typescript-go&lt;/a&gt;
&lt;/h1&gt;&lt;h1 id=&#34;typescript-7&#34;&gt;TypeScript 7
&lt;/h1&gt;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://devblogs.microsoft.com/typescript/typescript-native-port/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Not sure what this is? Read the announcement post!&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;preview&#34;&gt;Preview
&lt;/h2&gt;&lt;p&gt;A preview build is available on npm as &lt;code&gt;@typescript/native-preview&lt;/code&gt;.&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm install @typescript/native-preview
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npx tsgo &lt;span class=&#34;c1&#34;&gt;# Use this as you would tsc.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;A preview VS Code extension is &lt;a class=&#34;link&#34; href=&#34;https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.native-preview&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;available on the VS Code marketplace&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;To use this, set this in your VS Code settings:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nt&#34;&gt;&amp;#34;typescript.experimental.useTsgo&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;kc&#34;&gt;true&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;how-to-build-and-run&#34;&gt;How to Build and Run
&lt;/h2&gt;&lt;p&gt;This repo uses &lt;a class=&#34;link&#34; href=&#34;https://go.dev/dl/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Go 1.24 or higher&lt;/a&gt;, &lt;a class=&#34;link&#34; href=&#34;https://www.rust-lang.org/tools/install&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Rust 1.85 or higher&lt;/a&gt;, &lt;a class=&#34;link&#34; href=&#34;https://nodejs.org/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Node.js with npm&lt;/a&gt;, and &lt;a class=&#34;link&#34; href=&#34;https://www.npmjs.com/package/hereby&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;code&gt;hereby&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;For tests and code generation, this repo contains a git submodule to the main TypeScript repo pointing to the commit being ported.
When cloning, you&amp;rsquo;ll want to clone with submodules:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone --recurse-submodules https://github.com/microsoft/typescript-go.git
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;If you have already cloned the repo, you can initialize the submodule with:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git submodule update --init --recursive
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;With the submodule in place and &lt;code&gt;npm ci&lt;/code&gt;, you can run tasks via &lt;code&gt;hereby&lt;/code&gt;, similar to the TypeScript repo:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;hereby build          &lt;span class=&#34;c1&#34;&gt;# Verify that the project builds&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;hereby &lt;span class=&#34;nb&#34;&gt;test&lt;/span&gt;           &lt;span class=&#34;c1&#34;&gt;# Run all tests&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;hereby install-tools  &lt;span class=&#34;c1&#34;&gt;# Install additional tools such as linters&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;hereby lint           &lt;span class=&#34;c1&#34;&gt;# Run all linters&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;hereby format         &lt;span class=&#34;c1&#34;&gt;# Format all code&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;hereby generate       &lt;span class=&#34;c1&#34;&gt;# Generate all Go code (e.g. diagnostics, committed to repo)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Additional tasks are a work in progress.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;hereby&lt;/code&gt; is not required to work on the repo; the regular &lt;code&gt;go&lt;/code&gt; tooling (e.g., &lt;code&gt;go build&lt;/code&gt;, &lt;code&gt;go test ./...&lt;/code&gt;) will work as expected.
&lt;code&gt;hereby&lt;/code&gt; tasks are provided as a convenience for those familiar with the TypeScript repo.&lt;/p&gt;
&lt;h3 id=&#34;running-tsgo&#34;&gt;Running &lt;code&gt;tsgo&lt;/code&gt;
&lt;/h3&gt;&lt;p&gt;After running &lt;code&gt;hereby build&lt;/code&gt;, you can run &lt;code&gt;built/local/tsgo&lt;/code&gt;, which behaves mostly the same as &lt;code&gt;tsc&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;running-lsp-prototype&#34;&gt;Running LSP Prototype
&lt;/h3&gt;&lt;p&gt;To debug and run the VS Code extension without installing it globally:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Run VS Code in the repo workspace (&lt;code&gt;code .&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Copy &lt;code&gt;.vscode/launch.template.json&lt;/code&gt; to &lt;code&gt;.vscode/launch.json&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;kbd&gt;F5&lt;/kbd&gt; (or &lt;code&gt;Debug: Start Debugging&lt;/code&gt; from the command palette)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This will launch a new VS Code instance which uses the Corsa LS as the backend. If correctly set up, you should see &amp;ldquo;tsgo&amp;rdquo; in the status bar when a TypeScript or JavaScript file is open:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://producthunt.programnotes.cn/.github/ls-screenshot.png&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;LSP Prototype Screenshot&#34;
	
	
&gt;&lt;/p&gt;
&lt;h2 id=&#34;what-works-so-far&#34;&gt;What Works So Far?
&lt;/h2&gt;&lt;p&gt;This is still a work in progress and is not yet at full feature parity with TypeScript. Bugs may exist. Please check this list carefully before logging a new issue or assuming an intentional change.&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;Feature&lt;/th&gt;
          &lt;th&gt;Status&lt;/th&gt;
          &lt;th&gt;Notes&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;Program creation&lt;/td&gt;
          &lt;td&gt;done&lt;/td&gt;
          &lt;td&gt;Same files and module resolution as TS5.8. Not all resolution modes supported yet.&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Parsing/scanning&lt;/td&gt;
          &lt;td&gt;done&lt;/td&gt;
          &lt;td&gt;Exact same syntax errors as TS5.8&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Commandline and &lt;code&gt;tsconfig.json&lt;/code&gt; parsing&lt;/td&gt;
          &lt;td&gt;mostly done&lt;/td&gt;
          &lt;td&gt;Entry point slightly different for now&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Type resolution&lt;/td&gt;
          &lt;td&gt;done&lt;/td&gt;
          &lt;td&gt;Same types as TS5.8&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Type checking&lt;/td&gt;
          &lt;td&gt;done&lt;/td&gt;
          &lt;td&gt;Same errors, locations, and messages as TS5.8. Types printback in errors may display differently (in progress)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;JavaScript-specific inference and JS Doc&lt;/td&gt;
          &lt;td&gt;not ready&lt;/td&gt;
          &lt;td&gt;-&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;JSX&lt;/td&gt;
          &lt;td&gt;done&lt;/td&gt;
          &lt;td&gt;-&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Declaration emit&lt;/td&gt;
          &lt;td&gt;not ready&lt;/td&gt;
          &lt;td&gt;Coming soon&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Emit (JS output)&lt;/td&gt;
          &lt;td&gt;in progress&lt;/td&gt;
          &lt;td&gt;&lt;code&gt;target: esnext&lt;/code&gt; well-supported, other targets may have gaps&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Watch mode&lt;/td&gt;
          &lt;td&gt;prototype&lt;/td&gt;
          &lt;td&gt;Watches files and rebuilds, but no incremental rechecking&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Build mode / project references&lt;/td&gt;
          &lt;td&gt;not ready&lt;/td&gt;
          &lt;td&gt;-&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Incremental build&lt;/td&gt;
          &lt;td&gt;not ready&lt;/td&gt;
          &lt;td&gt;-&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Language service (LSP)&lt;/td&gt;
          &lt;td&gt;prototype&lt;/td&gt;
          &lt;td&gt;Minimal functionality (errors, hover, go to def). More features coming soon&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;API&lt;/td&gt;
          &lt;td&gt;not ready&lt;/td&gt;
          &lt;td&gt;-&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Definitions:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;done&lt;/strong&gt; aka &amp;ldquo;believed done&amp;rdquo;: We&amp;rsquo;re not currently aware of any deficits or major left work to do. OK to log bugs&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;in progress&lt;/strong&gt;: currently being worked on; some features may work and some might not. OK to log panics, but nothing else please&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;prototype&lt;/strong&gt;: proof-of-concept only; do not log bugs&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;not ready&lt;/strong&gt;: either haven&amp;rsquo;t even started yet, or far enough from ready that you shouldn&amp;rsquo;t bother messing with it yet&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;other-notes&#34;&gt;Other Notes
&lt;/h2&gt;&lt;p&gt;Long-term, we expect that this repo and its contents will be merged into &lt;code&gt;microsoft/TypeScript&lt;/code&gt;.
As a result, the repo and issue tracker for typescript-go will eventually be closed, so treat discussions/issues accordingly.&lt;/p&gt;
&lt;p&gt;For a list of intentional changes with respect to TypeScript 5.7, see CHANGES.md.&lt;/p&gt;
&lt;h2 id=&#34;contributing&#34;&gt;Contributing
&lt;/h2&gt;&lt;p&gt;This project welcomes contributions and suggestions.  Most contributions require you to agree to a
Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us
the rights to use your contribution. For details, visit &lt;a class=&#34;link&#34; href=&#34;https://cla.opensource.microsoft.com&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Contributor License Agreements&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When you submit a pull request, a CLA bot will automatically determine whether you need to provide
a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions
provided by the bot. You will only need to do this once across all repos using our CLA.&lt;/p&gt;
&lt;p&gt;This project has adopted the &lt;a class=&#34;link&#34; href=&#34;https://opensource.microsoft.com/codeofconduct/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Microsoft Open Source Code of Conduct&lt;/a&gt;.
For more information see the &lt;a class=&#34;link&#34; href=&#34;https://opensource.microsoft.com/codeofconduct/faq/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Code of Conduct FAQ&lt;/a&gt; or
contact &lt;a class=&#34;link&#34; href=&#34;mailto:opencode@microsoft.com&#34; &gt;opencode@microsoft.com&lt;/a&gt; with any additional questions or comments.&lt;/p&gt;
&lt;h2 id=&#34;trademarks&#34;&gt;Trademarks
&lt;/h2&gt;&lt;p&gt;This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft
trademarks or logos is subject to and must follow
&lt;a class=&#34;link&#34; href=&#34;https://www.microsoft.com/legal/intellectualproperty/trademarks/usage/general&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Microsoft&amp;rsquo;s Trademark &amp;amp; Brand Guidelines&lt;/a&gt;.
Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship.
Any use of third-party trademarks or logos are subject to those third-party&amp;rsquo;s policies.&lt;/p&gt;
</description>
        </item>
        
    </channel>
</rss>
