npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@microsoft/typespec-m365-copilot

v1.0.0

Published

TypeSpec Copilot Skills provides tooling to generate Declarative Agents and their associated Action plugins.

Readme

TypeSpec for Copilot Skills Libraries

This repository provides a TypeSpec decorator library to enable Copilot skill builders to define their Copilot plugins / Declarative Copilots in TypeSpec. It is defined to be used along with Kiota to generate the OpenAPI description and API Plugin manifest files.

TypeSpec is a language for describing cloud service APIs and generating other API description languages, client and service code, documentation, and other assets.

Contributing

For Contributing steps, see CONTRIBUTING.md

Overview of TypeSpec for Copilot and the basic declarative agent template

TypeSpec for Copilot

TypeSpec for Copilot is a specialized library that enhances the core TypeSpec language with features specific to Copilot skills. It is designed to generate API configuration files from TypeSpec definitions, which include OpenAPI spec files, as well as the skill’s functions and metadata used to create plugin manifests for AI orchestrators like Sydney.

The architecture of TypeSpec for Copilot is chosen to abstract the author and reviewer from the rapid pace of change of underlying artifacts, providing readable yet expressive syntax, robust validation tooling, and IntelliSense support. This approach simplifies the creation and ongoing updates of Copilot Declarative Agents, reducing the burden on developers and ensuring they stay up to date without excessive effort.

Build a basic declarative agent

With the declarative agent, you can build a custom version of Copilot that can be used for specific scenarios, such as for specialized knowledge, implementing specific processes, or simply to save time by reusing a set of AI prompts. For example, a grocery shopping Copilot declarative agent can be used to create a grocery list based on a meal plan that you send to Copilot.

Getting started with TypeSpec

Set up your development environment

You will need a user with a Copilot license in a tenant that has sufficient permission to side load an agent.

Installing all dependencies into your own machine

Ensure SDK is installed

Install the SDK If you install the SDK, you don't need to install the corresponding runtime.

To install the SDK, follows these steps:

  1. Install WinGet
  2. Open a terminal, such as PowerShell or Command Prompt.

On Windows, install the SDK with the following command:

winget install Microsoft.DotNet.SDK.9

On MacOS, install the SDK with the following

brew install --cask dotnet-sdk

On Linux, install the SDK with the following command:

sudo apt-get install dotnet-sdk-9

NVM installation

Install NVM on Mac/Linux (https://nvm.sh) or NVM-Windows on Windows (winget install CoreyButler.NVMforWindows). Then, install and use the current recommended Node version (currently 20.12.1).

nvm install 20.12.1
nvm use 20.12.1

Install TypeSpec and other package dependencies

npm install

Install Kiota

  1. Install Kiota
dotnet tool install Microsoft.OpenApi.Kiota

Note: Kiota's preview feature must be enabled in the environment.

$Env:KIOTA_CONFIG_PREVIEW = "true"

Install Teams Toolkit (TTK) and TypeSpec Extensions

In the Visual Studio Code Extensions,

  1. Install Teams Toolkit.
    • Once installed, select the TTK from the left-hand menu and add your licensed user account to the Accounts section and sign in.
  2. Install TypeSpec for VS Code

Provisioning and running your agent

  1. First, select the Teams Toolkit icon on the left in the VS Code toolbar.
  2. In the Account section, sign in with your Microsoft 365 account if you haven't already.
  3. Create your app
  • Create a teams app by clicking on 'Create a new app' Create a new app

  • Add an action Add an action

  • Start with TypeSpec Start with TypeSpec

    Make your edits to the main.tsp file

  1. Create Teams app by clicking Provision in "Lifecycle" section.
  2. Select Preview in Copilot (Edge) or Preview in Copilot (Chrome) from the launch configuration dropdown.
  3. Once the Copilot app is loaded in the browser, click on the "…" menu and select "Copilot chats". You will see your declarative agent on the right rail. Clicking on it will change the experience to showcase the logo and name of your declarative agent.
  4. Ask a question to your declarative agent and it should respond based on the instructions provided. After provisioning the agent for the first time, the agent will appear in the Copilot's right rail under Agents. You will need to confirm that Copilot is allowed to interact with the API plugin. If an "Allow" button is not rendered in the Copilot chat dialog, you can type "confirm" when prompted.

Important Notes

From the TTK, under Lifecycle, click provision to generate your agent artifacts and provision them. The agent will appear in the https://www.microsoft365.com/chat right rail under Agents.

When updating the agent, a version is added to the title. If the version is incrementing in the Agent title when loading Copilot, uninstall the agent and reprovision.

Trademarks

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 Microsoft's Trademark & Brand Guidelines. 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's policies.