Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
55 changes: 55 additions & 0 deletions community/adner/Agent365_Notifications/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# Visual Studio temporary files, build results, and
# files generated by popular Visual Studio add-ons.

# User-specific files
*.suo
*.user
*.userosscache
*.sln.docstates

# User-specific files (MonoDevelop/Xamarin Studio)
*.userprefs

# Build results
[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/
x64/
x86/
bld/
[Bb]in/
[Oo]bj/
[Ll]og/

# Visual Studio 2015/2017 cache/options directory
.vs/

# Visual Studio 2017 auto generated files
Generated\ Files/

# MSTest test Results
[Tt]est[Rr]esult*/
[Bb]uild[Ll]og.*

# .NET Core
project.lock.json
project.fragment.lock.json
artifacts/

# NuGet Packages
*.nupkg
**/[Pp]ackages/*
!**/[Pp]ackages/build/

# VS Code files
.vscode/

# JetBrains Rider
*.sln.iml
.idea/

# Mac files
.DS_Store

.claude/
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.14.36623.8
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AgentFrameworkNotificationAgent", "notification-agent\AgentFrameworkNotificationAgent.csproj", "{C05BF552-56C0-8F74-98D5-F51053881902}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{C05BF552-56C0-8F74-98D5-F51053881902}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C05BF552-56C0-8F74-98D5-F51053881902}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C05BF552-56C0-8F74-98D5-F51053881902}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C05BF552-56C0-8F74-98D5-F51053881902}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {A13DF873-5DE4-4F7D-9734-FA05F32F218E}
EndGlobalSection
EndGlobal
15 changes: 15 additions & 0 deletions community/adner/Agent365_Notifications/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Agent365 notification Agent

This is a sample that demonstrates how to implement Agent 365 notification functionality, that allows an agent to respond to comments in a Word document, as well as responding to emails. Check out [this video](https://www.youtube.com/watch?v=xKd1awTemiU) that shows how you can use Agent 365 notifications to collaborate with an agent when reviewing a Word document.

In addition to responding to the notifications mentioned above, the agent can also respond to Teams messages. In this [blog post](https://nullpointer.se/agent-365-notifications.html) I provide more details on how the sample was implemented.

## Overview

This project showcases the notification system that is part of the Agent365 architecture. Before running the sample, you need to setup the infrastructure needed for deploying the agent in Agent 365. Here is a great resource that summarizes the steps necessary:

[https://learn.microsoft.com/en-us/microsoft-agent-365/developer/a365-dev-lifecycle](https://learn.microsoft.com/en-us/microsoft-agent-365/developer/a365-dev-lifecycle)

Also check out my [blog post](https://nullpointer.se/exploring-agent-365-cli.html) (written in December 2025, might be dated when you read this) that describes how to use the Agent 365 CLI to provision the infrastructure.

Ping me LinkedIn if you have any questions: [https://www.linkedin.com/in/andreasadner/](https://www.linkedin.com/in/andreasadner/)
Copy link

Copilot AI Jan 11, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The text "Ping me LinkedIn" is grammatically incomplete. It should be "Ping me on LinkedIn" to be grammatically correct.

Suggested change
Ping me LinkedIn if you have any questions: [https://www.linkedin.com/in/andreasadner/](https://www.linkedin.com/in/andreasadner/)
Ping me on LinkedIn if you have any questions: [https://www.linkedin.com/in/andreasadner/](https://www.linkedin.com/in/andreasadner/)

Copilot uses AI. Check for mistakes.
Comment on lines +1 to +15
Copy link

Copilot AI Jan 11, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The README is missing several critical sections required for Agent 365 samples:

  1. Prerequisites section with specific versions (e.g., .NET 8.0+, SDK versions)
  2. Configuration section with example appsettings.json snippets
  3. Step-by-step "How to run this sample" instructions with specific commands (dotnet run, etc.)
  4. Multiple testing options documentation (Playground, WebChat, Teams/M365)
  5. Troubleshooting section with common errors and solutions
  6. Links to official Agent 365 SDK documentation

Following the standard structure used in other Agent 365 samples would improve usability and maintainability.

Copilot generated this review using guidance from repository custom instructions.
244 changes: 244 additions & 0 deletions community/adner/Agent365_Notifications/notification-agent/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,244 @@
## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.
##
## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore

# User-specific files
*.suo
*.user
*.userosscache
*.sln.docstates
target/

# Cake
/.cake
/version.txt
/PSRunCmds*.ps1

# User-specific files (MonoDevelop/Xamarin Studio)
*.userprefs

# Build results
[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/
x64/
x86/
bld/
[Bb]in/
[Oo]bj/
[Ll]og/
/bin/
/binSigned/
/obj/
Drop/
target/
Symbols/
objd/
.config/

# Visual Studio 2015/2017 cache/options directory
.vs/
# Uncomment if you have tasks that create the project's static files in wwwroot
#wwwroot/

# Visual Studio 2017 auto generated files
Generated\ Files/

# MSTest test Results
[Tt]est[Rr]esult*/
[Bb]uild[Ll]og.*

# NUNIT
*.VisualState.xml
TestResult.xml

# Build Results of an ATL Project
[Dd]ebugPS/
[Rr]eleasePS/
dlldata.c

# Benchmark Results
BenchmarkDotNet.Artifacts/

# .NET Core
project.lock.json
project.fragment.lock.json
artifacts/
**/Properties/launchSettings.json

# StyleCop
StyleCopReport.xml

# Files built by Visual Studio
*_i.c
*_p.c
*_i.h
*.ilk
*.meta
*.obj
*.iobj
*.pch
*.pdb
*.ipdb
*.pgc
*.pgd
*.rsp
*.sbr
*.tlb
*.tli
*.tlh
*.tmp
*.tmp_proj
*.log
*.vspscc
*.vssscc
.builds
*.pidb
*.svclog
*.scc

# Chutzpah Test files
_Chutzpah*

# Visual C++ cache files
ipch/
*.aps
*.ncb
*.opendb
*.opensdf
*.sdf
*.cachefile
*.VC.db
*.VC.VC.opendb

# Visual Studio profiler
*.psess
*.vsp
*.vspx
*.sap

# Visual Studio Trace Files
*.e2e

# TFS 2012 Local Workspace
$tf/

# Guidance Automation Toolkit
*.gpState

# ReSharper is a .NET coding add-in
_ReSharper*/
*.[Rr]e[Ss]harper
*.DotSettings.user

# JustCode is a .NET coding add-in
.JustCode

# TeamCity is a build add-in
_TeamCity*

# DotCover is a Code Coverage Tool
*.dotCover

# AxoCover is a Code Coverage Tool
.axoCover/*
!.axoCover/settings.json

# Visual Studio code coverage results
*.coverage
*.coveragexml

# NCrunch
_NCrunch_*
.*crunch*.local.xml
nCrunchTemp_*

# Click-Once directory
publish/

# Publish Web Output
*.[Pp]ublish.xml
*.azurePubxml
# Note: Comment the next line if you want to checkin your web deploy settings,
# but database connection strings (with potential passwords) will be unencrypted
*.pubxml
*.publishproj

# Microsoft Azure Web App publish settings. Comment the next line if you want to
# checkin your Azure Web App publish settings, but sensitive information contained
# in these scripts will be unencrypted
PublishScripts/

# NuGet Packages
*.nupkg
# The packages folder can be ignored because of Package Restore
**/[Pp]ackages/*
# except build/, which is used as an MSBuild target.
!**/[Pp]ackages/build/
# Uncomment if necessary however generally it will be regenerated when needed
#!**/[Pp]ackages/repositories.config
# NuGet v3's project.json files produces more ignorable files
*.nuget.props
*.nuget.targets

# Microsoft Azure Build Output
csx/
*.build.csdef

# Microsoft Azure Emulator
ecf/
rcf/

# Visual Studio cache files
# files ending in .cache can be ignored
*.[Cc]ache
# but keep track of directories ending in .cache
!*.[Cc]ache/

# Others
ClientBin/
~$*
*~
*.dbmdl
*.dbproj.schemaview
*.jfm
*.pfx
*.publishsettings
orleans.codegen.cs

#nodeJS stuff
/node_modules/

#local development
appsettings.local.json
appsettings.Development.json
appsettings.Development*
appsettings.Production.json
**/[Aa]ppManifest/*.zip
.deployment

# JetBrains Rider
*.sln.iml
.idea

# Mac files
.DS_Store

# VS Code files
.vscode
src/samples/ModelContextProtocol/GitHubMCPServer/Properties/ServiceDependencies/GitHubMCPServer20250311143114 - Web Deploy/profile.arm.json

# VS Files
.vs/

# Agent SDK generated files
*.transcript
a365.config.json
a365.generated.config.json
msteams/
appPackage/
agents_email/
agents_Excel/
manifest/
Loading