# DA-Forge: Streamlining Declarative Agent Creation for Copilot Notebooks

This repository profile is provided by osrepos.com, an open source repository discovery platform.

Source: osrepos.com
Repository profile: https://osrepos.com/repo/microsoft-da-forge
Generated for open source discovery and AI-assisted research.

DA-Forge is a Python-based tool by Microsoft designed to automate the creation and deployment of Declarative Agents for Copilot Notebooks. It significantly reduces the manual effort and time required to set up AI assistants with specific grounding references, transforming an 85-minute process into just a few minutes. This tool is essential for developers and researchers working with Copilot Notebooks and Declarative Agents.

GitHub: https://github.com/microsoft/da-forge
OSRepos URL: https://osrepos.com/repo/microsoft-da-forge

## Summary

DA-Forge is a Python-based tool by Microsoft designed to automate the creation and deployment of Declarative Agents for Copilot Notebooks. It significantly reduces the manual effort and time required to set up AI assistants with specific grounding references, transforming an 85-minute process into just a few minutes. This tool is essential for developers and researchers working with Copilot Notebooks and Declarative Agents.

## Topics

- Python
- Microsoft 365
- Copilot
- AI Agents
- Automation
- Development Tools
- GitHub
- CLI

## Repository Information

Last analyzed by OSRepos: Sat Sep 12 2026 20:07:59 GMT+0100 (Western European Summer Time)
Detail views: 0
GitHub clicks: 0

## Safety Notice

OSRepos shares public repositories for knowledge and discovery only. Review source code, dependencies, licenses, and security implications before running or installing anything.

## Content

## Introduction

DA-Forge is an innovative open-source tool developed by Microsoft, designed to significantly streamline the creation and deployment of Declarative Agents for Copilot Notebooks. This Python-based utility automates a complex, multi-step process, enabling developers and researchers to ground AI agents with specific references like emails, meetings, files, and webpages in a matter of seconds. It transforms what was previously a time-consuming and error-prone manual task into an efficient, one-command operation.

For more details, visit the official repository: [microsoft/da-forge](https://github.com/microsoft/da-forge){target="_blank"}

## Why Use It and Key Benefits

The process of creating Declarative Agents as a proxy for Copilot Notebooks for research or development purposes traditionally involves significant manual effort and time. Developers often face challenges such as:

*   **Manual Manifest Creation:** Generating complex manifest files with specific formats can take around 40 minutes.
*   **Unique ID Extraction:** Manually extracting and formatting unique IDs from files, emails, and meetings uploaded as Notebook references can consume another 30 minutes.
*   **Special Formatting Requirements:** Each capability type has its own ID structure and JSON schema, adding to the complexity.
*   **DA Initiation and Sideloading:** Multiple manual steps for agent initiation and sideloading are prone to errors and take about 15 minutes.

Collectively, these steps can amount to approximately 85 minutes per agent, coupled with a high error rate.

DA-Forge provides a robust solution by automating this entire process. By simply extracting the socket JSON from your Copilot Notebook configuration, you can deploy a Declarative Agent in roughly 2 minutes. This drastic reduction in deployment time, from 85 minutes to just 2, makes DA-Forge an invaluable tool.

Key features and benefits include:

*   **Zero External Dependencies:** Built purely with Python's standard library, ensuring minimal overhead and easy integration.
*   **Automated Manifest Generation:** Generates manifest files from templates with automatic GUID generation.
*   **Smart Capability Injection:** Automatically categorizes and injects capabilities, handling both regular and experimental types.
*   **One-Command Deployment:** Simplifies the entire workflow, from creation and revision to zipping and sideloading, into a single command.
*   **Socket-Based Configuration:** Separates grounding data from boilerplate, allowing for cleaner and more manageable configurations.

## Installation

To get started with DA-Forge, follow these installation steps.

### Prerequisites

*   Python 3.10+
*   [Teams Toolkit CLI](https://learn.microsoft.com/microsoftteams/platform/toolkit/teams-toolkit-cli){target="_blank"} for sideloading

### Installation Options

**Option 1: Install from GitHub (Recommended)**

bash
# Install latest release
pip install git+https://github.com/microsoft/da-forge.git

# Or install a specific version
pip install git+https://github.com/microsoft/da-forge.git@v1.0.0


**Option 2: Install from Source (for development)**

bash
# Clone the repository
git clone https://github.com/microsoft/da-forge.git
cd da-forge

# Install in editable mode
pip install -e .


After installation, the `da-forge` command will be available globally.

## Examples

Here’s how to use DA-Forge to deploy your Declarative Agents.

### Step 1: Set up your project

bash
mkdir my-agents
cd my-agents
mkdir sockets


### Step 2: Extract and save socket JSON

Detailed instructions for extracting the socket JSON from your Copilot Notebook configuration can be found in the official documentation: [docs/capabilities.md](https://github.com/microsoft/da-forge/blob/main/docs/capabilities.md){target="_blank"}.

Save the extracted socket JSON to `sockets/my-agent.json`.

### Step 3: Deploy your agent

bash
da-forge deploy my-agent


The tool will automatically perform the following actions:

*   Use bundled templates from the package.
*   Create `raw_manifests/` with generated manifest files.
*   Create `zipped_manifests/` with the deployment package.
*   Sideload to Teams (or skip with `--skip-sideload`).

Your Declarative Agent will then be deployed to Teams with all the grounding context from your Copilot Notebook.

### CLI Commands

**Deploy an agent:**

bash
da-forge deploy <name> [--description TEXT] [--instruction TEXT] [--skip-sideload]


Examples:

bash
# Basic deployment
da-forge deploy my-copilot

# With custom description and instructions
da-forge deploy my-copilot --description "Email assistant" --instruction "Help with emails"

# Skip sideloading (just create package)
da-forge deploy my-copilot --skip-sideload


**List available agents:**

bash
da-forge list


This command shows all socket files located in the `sockets/` folder.

## Links

*   **Official GitHub Repository:** [microsoft/da-forge](https://github.com/microsoft/da-forge){target="_blank"}
*   **Teams Toolkit CLI:** [Learn more about Teams Toolkit CLI](https://learn.microsoft.com/microsoftteams/platform/toolkit/teams-toolkit-cli){target="_blank"}
*   **Capabilities Documentation:** [Detailed guide on extracting socket JSON](https://github.com/microsoft/da-forge/blob/main/docs/capabilities.md){target="_blank"}
*   **Development Documentation:** [Instructions for development setup, testing, and formatting](https://github.com/microsoft/da-forge/blob/main/docs/development.md){target="_blank"}
*   **License:** [MIT License](https://github.com/microsoft/da-forge/blob/main/LICENSE){target="_blank"}