Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1527 commits
Select commit Hold shift + click to select a range
11359d2
feat: add AutoAdmittedUsers configuration to Teams meeting policy
kris6673 Nov 17, 2025
06660b1
Add versioned headers to API calls
JohnDuprey Nov 17, 2025
0b34ca8
Merge pull request #4962 from kris6673/AutoAdmittedUsers
KelvinTegelaar Nov 18, 2025
c7652ad
Merge pull request #4961 from kris6673/export-selected
KelvinTegelaar Nov 18, 2025
cf721a9
Merge pull request #4951 from kris6673/group-soa
KelvinTegelaar Nov 18, 2025
31cddd8
Merge pull request #4950 from kris6673/gal-actions
KelvinTegelaar Nov 18, 2025
ed010de
Initial plan
Copilot Nov 18, 2025
53f25b6
Initial exploration - understanding secure score implementation
Copilot Nov 18, 2025
12ad0a7
Add filter button for Secure Score recommendations
Copilot Nov 18, 2025
da91db5
switch to info alert
JohnDuprey Nov 18, 2025
8bb1e37
fix: group type property in user actions
JohnDuprey Nov 18, 2025
c6e4b6d
Normalize template data structure in applied-standards
JohnDuprey Nov 19, 2025
6c7c833
fix policy import api calls
JohnDuprey Nov 19, 2025
cbbf083
Merge pull request #4966 from KelvinTegelaar/copilot/add-secure-score…
KelvinTegelaar Nov 19, 2025
3b5fe90
move logo
KelvinTegelaar Nov 19, 2025
552e9ec
add standard
KelvinTegelaar Nov 19, 2025
2cb9d6b
remove accidental duplication.
KelvinTegelaar Nov 19, 2025
fa6d11b
Display Standard section in log entry page
JohnDuprey Nov 19, 2025
5ff16a3
Added Template
KelvinTegelaar Nov 19, 2025
2f875ba
Merge branch 'dev' of https://github.com/KelvinTegelaar/CIPP into dev
KelvinTegelaar Nov 19, 2025
aa836cc
Add Edit User updates for things
KelvinTegelaar Nov 19, 2025
889830e
Add tenant group and custom variable rule support
JohnDuprey Nov 19, 2025
50d8bdd
Feat: Add form reset on successful guest invitation
kris6673 Nov 19, 2025
3d13d78
Add 'Clone Template' action to MEM templates page
JohnDuprey Nov 19, 2025
e004311
Improve tenant policy import logic and cleanup imports
JohnDuprey Nov 19, 2025
91f79cc
Update tenant selection to exclude all tenants
JohnDuprey Nov 19, 2025
75baa3c
Improve parameter handling in scheduler form
JohnDuprey Nov 19, 2025
1a1d4ec
Update logentry.js
JohnDuprey Nov 20, 2025
d3037e8
add option to search title
KelvinTegelaar Nov 20, 2025
12bd5e8
move vacation mode to drawer
KelvinTegelaar Nov 20, 2025
bfaa838
add ability to set autoSubscribeNewMembers #4864
KelvinTegelaar Nov 20, 2025
d74450a
export selected
KelvinTegelaar Nov 20, 2025
16af201
Merge branch 'dev' of https://github.com/KelvinTegelaar/CIPP into dev
JohnDuprey Nov 20, 2025
8cec941
vacation mode tweaks
JohnDuprey Nov 20, 2025
39da4b0
Merge pull request #4969 from kris6673/clear-guest
KelvinTegelaar Nov 20, 2025
a2c003b
tweak ca policy template page
JohnDuprey Nov 20, 2025
e3e55a7
feat: vacation mode audit log exclusions
JohnDuprey Nov 20, 2025
a93ca22
clean up drift conditional
KelvinTegelaar Nov 20, 2025
eddf8c8
memoized links
KelvinTegelaar Nov 20, 2025
faa4342
Improve vacation mode and alert condition handling
JohnDuprey Nov 20, 2025
228c254
Add template view to CippAutocomplete component
JohnDuprey Nov 21, 2025
e4ae9d4
#4976
KelvinTegelaar Nov 21, 2025
e300810
Add standard logs drawer to applied standards page
JohnDuprey Nov 21, 2025
a21cb80
updates to template creation processupdates to template creation process
KelvinTegelaar Nov 21, 2025
e5d967a
Merge branch 'dev' of https://github.com/KelvinTegelaar/CIPP into dev
KelvinTegelaar Nov 21, 2025
d6144f1
updates to template creation process
KelvinTegelaar Nov 21, 2025
72289c6
remove p[ackage lock
KelvinTegelaar Nov 21, 2025
6d8a063
up version
KelvinTegelaar Nov 21, 2025
ac2c7fc
Merge pull request #4977 from KelvinTegelaar/dev
KelvinTegelaar Nov 21, 2025
a838aac
Improve Autocomplete popover behavior for multiple mode
JohnDuprey Nov 21, 2025
c7105aa
add tooltips
JohnDuprey Nov 21, 2025
c85f3bc
push yarn lock
JohnDuprey Nov 22, 2025
8d6db15
add version selector
JohnDuprey Nov 22, 2025
788ece4
Add Directory Audits page and tab option
JohnDuprey Nov 22, 2025
5ec683d
casing
JohnDuprey Nov 22, 2025
1622ac1
Refactor GUID resolution logic in CippJSONView
JohnDuprey Nov 22, 2025
b12f546
Add manual pagination and increase page size
JohnDuprey Nov 22, 2025
1d2cfc9
Enhance central search with tab options and permissions
JohnDuprey Nov 22, 2025
3ae7e89
formating
JohnDuprey Nov 22, 2025
f85c7c5
Add diff view support to CippJSONView
JohnDuprey Nov 22, 2025
b1e68cb
Improve error handling in CippApiResults
JohnDuprey Nov 23, 2025
7d50787
Rename and enhance application template actions
JohnDuprey Nov 23, 2025
d1426a7
Update app registration actions and template UI
JohnDuprey Nov 23, 2025
5cd1482
Remove back buttons and add breadcrumb navigation
JohnDuprey Nov 24, 2025
85814bf
Update CippTransportRuleDrawer.jsx
Zacgoose Nov 24, 2025
6e7120f
Support dynamic default form values in CippApiDialog
JohnDuprey Nov 24, 2025
c1c0f97
Improve navigation path matching and menu config
JohnDuprey Nov 24, 2025
5c18ec3
Add hierarchical/history breadcrumb navigation
JohnDuprey Nov 24, 2025
8729c85
Improve breadcrumb title handling and group edit page title
JohnDuprey Nov 24, 2025
dd47ca7
Improve breadcrumb title update and settings init
JohnDuprey Nov 24, 2025
91e8b65
Fix: Add condition for copy sent items based on recipient type and re…
kris6673 Nov 24, 2025
c02c994
Improve breadcrumb navigation for tab pages
JohnDuprey Nov 24, 2025
10c9be8
Add scheduled task filter to API logs drawer
JohnDuprey Nov 24, 2025
24c46ee
Bump version to 8.7.1
JohnDuprey Nov 24, 2025
3b05feb
Merge pull request #4988 from Zacgoose/transport-rule-fix
JohnDuprey Nov 24, 2025
ff9bf81
Merge pull request #4992 from kris6673/copysent
JohnDuprey Nov 24, 2025
c3bbb62
Adjust Box padding in user pages
JohnDuprey Nov 24, 2025
fb37af3
Potential fix for code scanning alert no. 53: Incomplete string escap…
JohnDuprey Nov 24, 2025
c925e7d
Merge pull request #4994 from KelvinTegelaar/dev
JohnDuprey Nov 24, 2025
c91817d
Feat: Add custom group assignment option and update assignment intent…
kris6673 Nov 24, 2025
c08f43d
Feat: Enhance app assignment dialogs with intent selection and update…
kris6673 Nov 24, 2025
a11aa1f
Feat: Add assignment mode radio options to app assignment dialogs
kris6673 Nov 24, 2025
5015340
Feat: Update confirmation message with displayName
kris6673 Nov 24, 2025
abcd498
Add new columns to simpleColumns array
kris6673 Nov 25, 2025
894a5ed
Merge pull request #4996 from kris6673/appAssignment
KelvinTegelaar Nov 25, 2025
0243afc
fix group template display
JohnDuprey Nov 25, 2025
6da3172
Feat: Update alert icons to use MUI icons for better consistency
kris6673 Nov 25, 2025
ce352c6
Refine template API call and compliance check logic
JohnDuprey Nov 25, 2025
aa3cd11
Fix menu searching to only use permissions and not role.
KelvinTegelaar Nov 25, 2025
7e5a48b
menu fix
KelvinTegelaar Nov 25, 2025
41ff35e
version up
KelvinTegelaar Nov 25, 2025
de6a125
Merge pull request #5007 from KelvinTegelaar/dev
KelvinTegelaar Nov 25, 2025
b29b121
Fix SMTP Auth alerts
JyskIT-DK Nov 26, 2025
f92c932
clean up logs page
JohnDuprey Nov 26, 2025
2a0a3ef
Feat: Change to use ListAppProtectionPolicies endpoint to fix configu…
kris6673 Nov 25, 2025
0e50466
Fix: Rename page to better suit new functionality
kris6673 Nov 25, 2025
69c0bf7
Feat: Add new assignment options for policies in the App Protection page
kris6673 Nov 25, 2025
9c17f39
Feat: Add assignment mode options for policy assignments in complianc…
kris6673 Nov 26, 2025
bc633ef
Feat: Add assignment filter options for policies in MEM pages
kris6673 Nov 26, 2025
7a03c57
Feat: Add PolicyAssignment and PolicyExclude columns to compliance an…
kris6673 Nov 26, 2025
66031e3
Feat: Add AppAssignment and AppExclude columns to applications list
kris6673 Nov 26, 2025
fac1e90
Feat: Update listscripts to show ScriptAssignments
kris6673 Nov 26, 2025
d996dd2
Feat: Add assignment options for user and device policies with custom…
kris6673 Nov 26, 2025
f6b823f
Add filtering for admin users
ZenTopBrandon Nov 27, 2025
4141512
Merge pull request #5014 from ZenTopBrandon/feature-admin-mfa-report
KelvinTegelaar Nov 27, 2025
ea5787d
Feat: Enhance CippApiDialog and CippUserActions for bulk request hand…
kris6673 Nov 27, 2025
4572b2d
Merge pull request #5019 from kris6673/add-to-group-multi
KelvinTegelaar Nov 27, 2025
3f00132
Merge pull request #5013 from kris6673/appConfigProtection
KelvinTegelaar Nov 27, 2025
c7400c2
Merge pull request #5010 from JyskIT-DK/patch-1
KelvinTegelaar Nov 27, 2025
21b5186
Merge pull request #5004 from kris6673/alert-icons
KelvinTegelaar Nov 27, 2025
413433f
Feat: Update confirmation messages in CippUserActions to include user…
kris6673 Nov 28, 2025
48ef561
Merge pull request #5025 from kris6673/confirmMessages
KelvinTegelaar Nov 28, 2025
6fbf9c2
Merge branch 'dev' of https://github.com/KelvinTegelaar/CIPP into dev
JohnDuprey Nov 28, 2025
ee89f83
Feat: Add Discovered Apps Intune page
kris6673 Dec 1, 2025
41f8ae5
Merge pull request #5034 from kris6673/detectedApps
KelvinTegelaar Dec 3, 2025
28fb1c4
secure score update remove scid
KelvinTegelaar Dec 3, 2025
5ca6706
Merge branch 'dev' of https://github.com/KelvinTegelaar/CIPP into dev
KelvinTegelaar Dec 3, 2025
26c48de
upgrade packages
KelvinTegelaar Dec 4, 2025
3eeae40
add option for multiple input fields.
KelvinTegelaar Dec 4, 2025
931c2f2
removed standard
KelvinTegelaar Dec 4, 2025
2619bdb
Initial plan
Copilot Dec 4, 2025
c79c302
Initial plan
Copilot Dec 4, 2025
c9b5ce3
Initial exploration - understanding the codebase
Copilot Dec 4, 2025
e2d8c14
Add tooltip to input fields to show full label text on hover
Copilot Dec 4, 2025
e29db72
Add filter for CA Vacation Mode page with Planned, Running, Completed…
Copilot Dec 4, 2025
4be3bd7
Add tooltip to autocomplete fields for complete label visibility
Copilot Dec 4, 2025
e77547f
Reorder filters to match scheduler page pattern for consistency
Copilot Dec 4, 2025
ed8fc6d
Simplify tooltip implementation by wrapping existing div
Copilot Dec 4, 2025
87b60f9
update for new drift management stuff
KelvinTegelaar Dec 4, 2025
7cce804
json anyway
KelvinTegelaar Dec 4, 2025
6551faa
application insights interface
JohnDuprey Dec 5, 2025
18a89d5
diagnostic preset support
JohnDuprey Dec 5, 2025
6d84b59
Add console log diagnostics presets
JohnDuprey Dec 5, 2025
2951935
Improve diagnostics filter and preset handling
JohnDuprey Dec 5, 2025
25dd885
Enhance diagnostics details panel with severity and JSON parsing
JohnDuprey Dec 5, 2025
9b34bcd
Improve diagnostics event rendering logic
JohnDuprey Dec 5, 2025
844aa56
Update diagnostics.js
JohnDuprey Dec 5, 2025
7da2579
Update diagnostics queries and row parsing logic
JohnDuprey Dec 5, 2025
15f42d7
Remove raw JSON details from diagnostics page
JohnDuprey Dec 5, 2025
b7e36e7
Update diagnostics.js
JohnDuprey Dec 5, 2025
601e67e
Add column metadata to diagnostics presets and filter
JohnDuprey Dec 5, 2025
2dadb18
Update CippDiagnosticsFilter.js
JohnDuprey Dec 5, 2025
aa13e0f
Allow saving built-in presets as new custom presets
JohnDuprey Dec 5, 2025
c7f89d0
Preserve custom preset on filter clear
JohnDuprey Dec 5, 2025
50d0a3a
Merge pull request #5051 from KelvinTegelaar/copilot/add-alt-text-to-…
KelvinTegelaar Dec 5, 2025
8d23e87
Merge pull request #5050 from KelvinTegelaar/copilot/add-filter-for-v…
KelvinTegelaar Dec 5, 2025
8a60cfc
Add vertical padding to layout container
JohnDuprey Dec 5, 2025
9513aa2
Require both configs to be successful before rendering
JohnDuprey Dec 6, 2025
0c72724
Add Conditional Access logs drawer to policy and template pages
JohnDuprey Dec 6, 2025
8a059bf
Refactor standards filter to dropdown menu
JohnDuprey Dec 6, 2025
554c0c4
Add overridden status for standards in comparison view
JohnDuprey Dec 7, 2025
1c180fc
Enhance standard actions display and logic
JohnDuprey Dec 7, 2025
d5508be
Update applied-standards.js
JohnDuprey Dec 7, 2025
74195aa
Enhance breadcrumb fallback and template actions
JohnDuprey Dec 7, 2025
413b613
Enhance template action and autoRemediate fallbacks
JohnDuprey Dec 7, 2025
a400395
Add 'Run Manually' chip for templates
JohnDuprey Dec 7, 2025
814fe0a
Improve layout and text overflow handling in Cipp cards
JohnDuprey Dec 8, 2025
e6ace39
Fix: Rename frontend agent, so it s possible to distinguish between t…
kris6673 Dec 8, 2025
ea959ac
Feat: Add alert for quarantine release requests
kris6673 Dec 8, 2025
e33007e
Merge pull request #5068 from kris6673/QuarantineReleaseRequests
KelvinTegelaar Dec 8, 2025
a5da1e9
Update ScheduledTaskDetails.jsx
JohnDuprey Dec 9, 2025
c1e2fa7
Update alert instructions placeholder text
JohnDuprey Dec 11, 2025
dfea55b
Feat: Add auto-archiving configuration standard
kris6673 Dec 11, 2025
8f842a2
Update alert.jsx
JohnDuprey Dec 11, 2025
c669898
Feat: Add validators to the standards
kris6673 Dec 11, 2025
9e142eb
Add time settings page with timezone support
JohnDuprey Dec 12, 2025
81f22d7
Update time-settings.js
JohnDuprey Dec 12, 2025
c15b121
Update time-settings.js
JohnDuprey Dec 12, 2025
2850e8b
Support alternative timezone names in time settings
JohnDuprey Dec 12, 2025
7a4fd87
Update server URL label
JohnDuprey Dec 12, 2025
56cb473
Fix: Spread action data in CIPPTableToptoolbar and ActionsMenu compon…
kris6673 Dec 12, 2025
87dd09d
exclude all tenant user template from template list page
Zacgoose Dec 13, 2025
c4cf778
Merge pull request #5077 from kris6673/AutoArchive
KelvinTegelaar Dec 13, 2025
f94b1f4
Merge pull request #5078 from kris6673/standard-validation
KelvinTegelaar Dec 13, 2025
a653678
Merge pull request #5081 from kris6673/issue5036
KelvinTegelaar Dec 13, 2025
802ce83
Merge pull request #5083 from Zacgoose/update-user-default-templates
KelvinTegelaar Dec 13, 2025
4f32d92
Add reference and post execution fields to forms
Zacgoose Dec 13, 2025
34a59df
feat: Add alert for Global Admins outside approved list with configur…
MWG-Logan Dec 13, 2025
e499a24
Merge pull request #5088 from MWG-Logan/ga-list-alert
KelvinTegelaar Dec 13, 2025
8acb2a4
add reporting jit
KelvinTegelaar Dec 13, 2025
56dffeb
Jit admin changes
KelvinTegelaar Dec 13, 2025
6c923e1
backup cleanup
KelvinTegelaar Dec 13, 2025
be7103d
xecDevicePasscodeAction
KelvinTegelaar Dec 14, 2025
8a18279
Fixed #5052
KelvinTegelaar Dec 14, 2025
4cb4232
add ability to disable email
KelvinTegelaar Dec 14, 2025
a8f952c
Add disable email checkbox
KelvinTegelaar Dec 14, 2025
d924379
disable all notifications instead
KelvinTegelaar Dec 14, 2025
3f77e3b
Merge pull request #5086 from Zacgoose/Reference-message-CA-and-Sched…
KelvinTegelaar Dec 14, 2025
ca20f55
Add group creation switch and improve error display
JohnDuprey Dec 15, 2025
0593b26
Feat: Add MDM enrollment isMdmEnrollmentDuringRegistrationDisabled st…
kris6673 Dec 15, 2025
c89cee0
Merge pull request #5089 from kris6673/isMdmEnrollmentDuringRegistrat…
KelvinTegelaar Dec 15, 2025
cbed554
Feat: Add 14-day and 21-day recurrence intervals for alert scheduling…
Copilot Dec 15, 2025
be00549
Merge pull request #5090 from kris6673/intervals
KelvinTegelaar Dec 15, 2025
2f4be8b
automated onboarding changes
KelvinTegelaar Dec 16, 2025
9cdf84e
hide title prop
KelvinTegelaar Dec 16, 2025
0e20985
dashv2 experimentation
KelvinTegelaar Dec 16, 2025
cc57f27
dashv2 experimentation
KelvinTegelaar Dec 16, 2025
d61e761
Update warning alert with refresh suggestion
JohnDuprey Dec 16, 2025
025a798
Cancel queries and cleanup in tenant selector
JohnDuprey Dec 16, 2025
ac94d8e
Feat: Add show more toggle for displaying more partner relationships …
kris6673 Dec 16, 2025
ddc6a58
Merge pull request #5100 from kris6673/show-more-partners
KelvinTegelaar Dec 16, 2025
a7e5cbf
Add InvocationId to console log diagnostics presets
JohnDuprey Dec 17, 2025
00f5f8d
Add CFZTNA.WebhookEnabled switch to Extensions config
JohnDuprey Dec 17, 2025
095196d
Enhance notification form with helper texts and button state
JohnDuprey Dec 17, 2025
33c6e57
Add domain management UI and related components
JohnDuprey Dec 17, 2025
ca81c0e
Update index.js
JohnDuprey Dec 17, 2025
30e07af
Add informational alert to domain drawer
JohnDuprey Dec 17, 2025
a2b1c80
version up
KelvinTegelaar Dec 17, 2025
bed7d47
Merge branch 'dev' of https://github.com/KelvinTegelaar/CIPP into dev
KelvinTegelaar Dec 17, 2025
2439a15
Merge pull request #5104 from KelvinTegelaar/dev
KelvinTegelaar Dec 17, 2025
b254047
fixes #5106
KelvinTegelaar Dec 18, 2025
1df2416
auto tenant fix
KelvinTegelaar Dec 18, 2025
29fe585
Improve settings initialization and update handling
JohnDuprey Dec 18, 2025
ca896e2
version up
JohnDuprey Dec 18, 2025
2de5265
Merge pull request #5112 from KelvinTegelaar/dev
JohnDuprey Dec 19, 2025
dadec81
Update _app.js
JohnDuprey Dec 19, 2025
eb6c5e9
Remove isInitialized check from app rendering
JohnDuprey Dec 19, 2025
f3ab9d6
Update _app.js
JohnDuprey Dec 19, 2025
7e53ee3
Remove isInitialized check from app rendering
JohnDuprey Dec 19, 2025
edcad60
Refactor tenant selection and URL sync logic
JohnDuprey Dec 19, 2025
39f7473
update text
JohnDuprey Dec 19, 2025
328c709
fix conditions
JohnDuprey Dec 19, 2025
ad99960
Clean up breadcrumb query params and titles
JohnDuprey Dec 19, 2025
b8730d5
fix useEffect
JohnDuprey Dec 19, 2025
9feba6a
Remove debug console.log statements from breadcrumb nav
JohnDuprey Dec 19, 2025
448b32d
Update CippBreadcrumbNav.jsx
JohnDuprey Dec 19, 2025
cefd906
Refactor standards pages and update alignment routes
JohnDuprey Dec 19, 2025
bd01077
cleanup console logs
JohnDuprey Dec 19, 2025
b0c87ea
Improve 'hasValue' condition logic in CippFormCondition
JohnDuprey Dec 19, 2025
600ef52
Remove unused addedField from Intune templates config
JohnDuprey Dec 19, 2025
c802dd6
Refactor tenant selection and URL sync logic
JohnDuprey Dec 19, 2025
19f1347
update text
JohnDuprey Dec 19, 2025
450e397
fix conditions
JohnDuprey Dec 19, 2025
dc8be58
Clean up breadcrumb query params and titles
JohnDuprey Dec 19, 2025
034a98e
fix useEffect
JohnDuprey Dec 19, 2025
58b930d
Remove debug console.log statements from breadcrumb nav
JohnDuprey Dec 19, 2025
5474006
Update CippBreadcrumbNav.jsx
JohnDuprey Dec 19, 2025
9d4d643
Refactor standards pages and update alignment routes
JohnDuprey Dec 19, 2025
401c4cf
cleanup console logs
JohnDuprey Dec 19, 2025
d40f2f5
Improve 'hasValue' condition logic in CippFormCondition
JohnDuprey Dec 19, 2025
e8f8df6
Remove unused addedField from Intune templates config
JohnDuprey Dec 19, 2025
35f2eed
Update standards route and remove list-standards page
JohnDuprey Dec 19, 2025
9f97de3
Improve breadcrumb title resolution and path validation
JohnDuprey Dec 19, 2025
f3f6392
Add conditional logic to CreateGroups switch
JohnDuprey Dec 19, 2025
ccaf6b1
Bump version to 8.8.2
JohnDuprey Dec 19, 2025
3ee55dd
Add tenant filter to backup history for AllTenants
JohnDuprey Dec 19, 2025
b321935
Update CippRestoreBackupDrawer.jsx
JohnDuprey Dec 19, 2025
0bbc79c
Use backup tenant in AllTenants restore context
JohnDuprey Dec 20, 2025
bac437a
Update configuration-backup.js
JohnDuprey Dec 20, 2025
16146ca
Merge pull request #5124 from KelvinTegelaar/dev
JohnDuprey Dec 20, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
45 changes: 45 additions & 0 deletions .github/agents/CIPP-Alert-Agent.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
---
name: CIPP Frontend Alert Registrar
description: >
Adds new alert entries to src/data/alerts.json in the CIPP frontend.
The agent must never modify any other file or perform any other change.
---

# CIPP Frontend Alert Registrar

## Mission

You are a **frontend alert registrar** responsible for updating the `src/data/alerts.json` file to include new alerts.

Your role is **strictly limited** to adding a new JSON entry describing the alert’s metadata.
You do not touch or inspect any other part of the codebase.

---

## Scope of Work

This agent is used when a new alert must be surfaced to the frontend — for example, after a new backend `Get-CIPPAlert*.ps1` alert has been added.

Tasks include:

- Opening `src/data/alerts.json`
- Appending one new JSON object describing the new alert
- Preserving JSON structure, indentation, and trailing commas exactly as in the existing file
- Validating that the resulting JSON is syntactically correct


## Alert Format

Each alert entry in `src/data/alerts.json` is a JSON object with the following structure:

```json
{
"name": "<alertName>",
"label": "A nice label for the alert",
"requiresInput": true,
"inputType": "switch",
"inputLabel": "Exclude disabled users?",
"inputName": "InactiveLicensedUsersExcludeDisabled",
"recommendedRunInterval": "1d"
}
```
45 changes: 45 additions & 0 deletions .github/agents/CIPP-Frontend-Alert-Agent.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
---
name: CIPP Frontend Alert Registrar
description: >
Adds new alert entries to src/data/alerts.json in the CIPP frontend.
The agent must never modify any other file or perform any other change.
---

# CIPP Frontend Alert Registrar

## Mission

You are a **frontend alert registrar** responsible for updating the `src/data/alerts.json` file to include new alerts.

Your role is **strictly limited** to adding a new JSON entry describing the alert’s metadata.
You do not touch or inspect any other part of the codebase.

---

## Scope of Work

This agent is used when a new alert must be surfaced to the frontend — for example, after a new backend `Get-CIPPAlert*.ps1` alert has been added.

Tasks include:

- Opening `src/data/alerts.json`
- Appending one new JSON object describing the new alert
- Preserving JSON structure, indentation, and trailing commas exactly as in the existing file
- Validating that the resulting JSON is syntactically correct


## Alert Format

Each alert entry in `src/data/alerts.json` is a JSON object with the following structure:

```json
{
"name": "<alertName>",
"label": "A nice label for the alert",
"requiresInput": true,
"inputType": "switch",
"inputLabel": "Exclude disabled users?",
"inputName": "InactiveLicensedUsersExcludeDisabled",
"recommendedRunInterval": "1d"
}
```
7 changes: 6 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ node_modules
.pnp
.pnp.js
build
package-lock.json
# testing
coverage

Expand All @@ -27,4 +28,8 @@ yarn-error.log*

# vscode debug logs
debug.log
app.log
app.log

# AI rules
.*/rules
AGENTS.md
6 changes: 6 additions & 0 deletions .vscode/tasks.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,12 @@
"type": "shell",
"command": "azurite --location ../",
"isBackground": true,
"options": {
"env": {
"LC_ALL": "en-US.UTF-8",
"LANG": "en-US"
}
},
"problemMatcher": {
"pattern": [
{
Expand Down
83 changes: 83 additions & 0 deletions CLA.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
# Contributor License Agreement (CLA)

This Contributor License Agreement ("Agreement") is entered into by the individual or entity ("You") submitting a Contribution to this project. By submitting a Contribution, You agree to the following terms and conditions:

---

## 1. Definitions

1. **"Contribution"** means any original work of authorship, including modifications or additions to existing works, submitted in any form (including source code, object code, documentation, or other materials) to this repository.
2. **"CyberDrain"** means the maintainers, owners, or legal rights holders of this repository, including successors and assigns.
3. **"Project License"** refers to the **GNU Affero General Public License, version 3 (AGPL-3.0)** under which this project is distributed, unless CyberDrain elects to relicense under a custom license.

---

## 2. Copyright Assignment

You hereby assign to CyberDrain, effective on submission of any Contribution, **all right, title, and interest worldwide in and to the copyright** of Your Contributions.

This assignment includes, without limitation, the exclusive rights to:

* Reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute the Contributions in any medium, and
* Relicense the Contributions under the AGPL-3.0 license, any future versions of that license, or under custom/commercial licenses as CyberDrain deems appropriate.

To the extent that applicable law prohibits the assignment of certain moral rights or similar rights, You hereby irrevocably waive those rights to the maximum extent permitted by law.

---

## 3. Patent Grant

You hereby grant to CyberDrain, its successors, assigns, and licensees a **perpetual, worldwide, non-exclusive, transferable, irrevocable, royalty-free, fully paid-up license** under any patents that You own or control, to make, have made, use, offer to sell, sell, import, and otherwise transfer Your Contributions.

This patent license extends only to the combination of Your Contributions with the Project to which they were submitted.

---

## 4. License Grant Back to You

CyberDrain hereby grants You a non-exclusive, worldwide, royalty-free, irrevocable license to use, reproduce, and prepare derivative works of Your Contributions for any purpose, **provided such use does not conflict with the licensing terms applied by CyberDrain** (including AGPL-3.0 or custom licenses).

---

## 5. Representations and Warranties

By submitting a Contribution, You represent and warrant that:

1. The Contribution is Your original creation, or You have sufficient rights to submit it.
2. The Contribution does not knowingly violate or infringe any third-party intellectual property rights.
3. You are legally entitled to assign copyright and grant the licenses described herein.
4. The Contribution is submitted free of any encumbrances, liens, or claims by any third party.

---

## 6. Custom Licensing

CyberDrain reserves the right to distribute the Project, including Your Contributions, under:

* The **AGPL-3.0 license**, and/or
* **Custom or commercial licenses**, including licenses granted to sponsors via GitHub Sponsorships.

Contributors acknowledge and agree that:

* Their Contributions may be included under such custom licenses.
* No royalties, fees, or other compensation shall be due to Contributors in connection with such relicensing.

---

## 7. Disclaimer of Warranty

Except as expressly stated in this Agreement, You provide Contributions **“AS IS”**, without warranties or conditions of any kind, express or implied, including but not limited to warranties of merchantability, fitness for a particular purpose, or non-infringement.

---

## 8. Limitation of Liability

In no event shall You be liable for any direct, indirect, incidental, special, exemplary, or consequential damages arising out of or in connection with Your Contributions, even if advised of the possibility of such damages.

---

## 9. Acceptance

By submitting a Contribution to this repository, You acknowledge that You have read and understood this Agreement, and that You agree to be legally bound by its terms.

No signature is required — **submission of a Contribution constitutes acceptance**.
47 changes: 47 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
# Contributing to This Project

First of all – thank you for considering contributing! 🎉 Contributions help improve this project for everyone, and we welcome issues, discussions, and pull requests.

Please read through this document before contributing.

---

## Contributor License Agreement (CLA)

By contributing to this repository, you agree to the terms of our **Contributor License Agreement (CLA):**

* **Copyright Transfer**: All contributions (commits, pull requests, issues, or code reviews) are automatically assigned to **CyberDrain**.
* Contributors give up ownership rights of their contributions and transfer them fully to CyberDrain.
* CyberDrain may use, modify, distribute, sublicense, or relicense the contributions under any terms it deems fit, including custom or commercial licenses.
* **You do not need to sign anything** – the act of contributing implies agreement with this CLA.

---

## Custom Licenses

This project is generally open source, but we also provide **custom licensing options**:

* Custom licenses are available **upon agreement**.
* Sponsors who arrange a custom license are **not required** to publish their license terms in this repository.
* Since copyright of contributions is transferred to CyberDrain, CyberDrain has full authority to include contributions under such custom licensing terms.


---

## How to Contribute

As this project is ever evolving, we recommend checking out the contributions docs on our doc page here:

- https://docs.cipp.app/dev-documentation/contributing-to-the-code
- https://docs.cipp.app/dev-documentation/cipp-dev-guide
- https://docs.cipp.app/dev-documentation/contributing-to-the-documentation

---

## Code of Conduct

We expect all contributors to follow respectful, inclusive, and collaborative practices.
Please help keep this project a safe and welcoming place for everyone.

👉 By contributing to this repository, you acknowledge that your contributions are automatically and irrevocably transferred in copyright to **CyberDrain**, and that they are covered by the CLA described above.

14 changes: 14 additions & 0 deletions LICENSE.CustomLicenses.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
1. Availability of Custom Licenses
Custom licenses are available to sponsors via GitHub Sponsorships. Upon mutual agreement between the project maintainers and the sponsor, such licenses shall apply to the sponsored party.

2. Publication Exemption
Custom licenses granted through GitHub Sponsorships are exempt from publication in this repository. Sponsors and maintainers may keep such agreements private.

3. Contributor License Agreement (CLA)
By contributing to this repository in any form (including but not limited to commits, pull requests, and code reviews), contributors explicitly agree to the terms of this Contributor License Agreement.

4. Coverage of Contributions
Any and all commits made to this repository are automatically considered covered under this CLA. Contributors retain copyright to their individual contributions, while granting the maintainers the necessary rights to use, modify, distribute, and sublicense such contributions in accordance with the terms of the project.

5. Automatic Acceptance
All contributors to this repository, by the act of contribution, automatically and irrevocably agree to the provisions of this CLA and the terms herein.
Loading