Impact Agent Companion App

The companion app is a Teams Personal Tab that manages a user’s interactions with the Impact Agent copilot. It provides visibility into how the agent operates and control over its parameters.

Deployment model

Platform: Microsoft Teams Personal Tab

App registration: Shared with the bot (client ID 52ca1551-12c0-4e02-b03f-a5a9a3f6ec9b)

Authentication: Teams SSO (no extra login)

Theme: Follows Teams light/dark/contrast automatically

Core purpose

Visualize: Understand what the agent is using to produce outputs

Tweak: Adjust operating parameters and preferences

Schedule: Configure when the agent proactively checks in

Review: See all outputs, conversations, and sources

This supports proactive check-ins for weekly/monthly reporting, status updates, and recurring stakeholder comms.

Features

Viewable content assets

• Scratchpad — session-level notes and tool calls

• Memories — persistent user preferences and learned facts

• State & context — what contributes to agent responses

• User preferences — settings and configuration

• User activity — interaction history and timelines

• User feedback — thumbs up/down history

Agent outputs

• Browse all weekly summaries

• Markdown preview

• Download as file

• Open in OneDrive

• Search across all outputs

Conversation history

• User and assistant turns

• Tool calls and results

• Sources accessed (emails, files, meetings)

• Timestamps and session grouping

Sources & permissions

• View which Microsoft Graph scopes are active

• See what sources contributed to each output

• Revoke access / sign out

Keywords & tracking

• Configure keywords to search for

• Add/remove projects

• Select colleagues to include

• Choose Teams channels to monitor

Teams manifest tabs

The Teams app package includes these static tabs:

TabPathPurpose
Companion/Dashboard with activity overview
Outputs/outputsBrowse weekly summaries
Settings/settingsConfigure keywords, schedule

Folder structure

The scaffold is organized around layout components, auth + Graph clients, state, and routed pages.

companion-app/
├── src/
│   ├── components/layout/   # AppShell, Sidebar, Header
│   ├── lib/auth/            # Teams SSO + MSAL authentication
│   ├── lib/graph/           # Microsoft Graph client
│   ├── lib/stores/          # Zustand state management
│   ├── pages/               # Dashboard, Outputs, History, etc.
│   ├── types/               # TypeScript definitions
│   └── App.tsx              # Main app with routing
├── package.json
├── tailwind.config.js
├── vite.config.ts
└── README.md

Next steps

1. Run install in the `companion-app/` folder

2. Build the app

3. Deploy to hosting (Azure Static Web Apps recommended)

4. Set `TAB_DOMAIN` in your m365agents env files

5. Redeploy the Teams app (`atk provision` and `atk deploy`)

6. Open Impact Agent in Teams — the companion tab appears