Skip to main content

Automation candidates

While the Phase 8 catalog was being rebuilt, a parallel agent mined the local session corpus for work worth automating. It returned twenty-five ranked candidates.

The source report is coral-schema/automation-candidates.md in the audit repository. This page reproduces its findings and explains the one structural decision that makes it useful.

What was mined​

SourceCount
Session-state directories scanned2,923
Titled session plans (plan.md)262
Machine-level skills100+
User-level skills45
Fleet agents (dayour-*)80
Ranked candidates returned25

The corpus is one workstation's accumulated agent sessions, not an organisation-wide survey. Candidates reflect what this operator repeatedly did by hand, which is exactly the signal that matters for deciding what to automate next, and exactly the wrong signal for claiming general demand.

The dedup baseline is the important part​

Before ranking anything, the harvest established what was already being built, and flagged every candidate touching that set:

Existing workStatus
GitHub key managementin flight
owcp-incident-loadtest - timer-driven Dataverse incident generatorBUILT
coral-agent-builder - one-shot create / name / instruct / greeting / publish / previewin flight
mcp-edge-unlock - clear a stale mcp-msedge lock to recover Playwrightin flight
dataverse-rest-kit - az-token plus Web API metadata / create / update / file-column helpersin flight
flow-clone-runcontext - guided Save-As plus trigger Scope (User/Org) and Run-asin flight
darbot-file-validate - validate local file:// HTML via darbot-browser MCPin flight
pa-flow-pdf-to-record - persist a generated document back to its source row and flag itin flight

A ranked list of automation ideas is close to worthless without this step. Any sufficiently large session corpus will surface the same high-frequency tasks repeatedly, and those are precisely the tasks someone has already started automating - which is why they recur. Ranking by frequency alone reliably promotes solved problems to the top.

Four of the top ten overlap existing work. They stay on the list because overlap is not duplication - a partially-built tool may still need the generalisation a candidate describes - but they are marked, and they are not counted as net-new value.

Top ten​

10 of 10 candidates
#CandidateRationaleOverlap
1Bulk Agent Security HardeningApply web-channel and security settings across an agent fleet in one pass.net-new
2Eval-at-Publish ALM GateRun evaluations at publish time and block on regression.net-new
3One-Shot Coral Agent ProvisionerParameterized create, configure, publish, and preview in a single pass.coral-agent-builder
4Dataverse REST Kit / Row-from-TemplateToken-auth metadata plus create and update, including file columns.dataverse-rest-kit
5PDF/Doc to Record PersisterWrite a generated document back to its source row and flag it.pa-flow-pdf-to-record
6Workshop Environment Pool ProvisionerThrottled parallel environment creation for labs.net-new
7HTML Wiki / Showcase BuilderSelf-contained branded HTML wikis from a repository or session corpus.net-new
8GitHub Repo BootstrapStandardize CI/CD, issues, and Actions for new repositories.net-new
9Engagement / RoB Report GeneratorTurn a CRM URL into an enriched HTML engagement report.net-new
10Screenshot/Browser Capture to Doc PipelinePrivacy-safe captures feeding runbooks and wikis.partial

The strongest net-new additions, per the report's own summary: #1 Bulk Agent Security Hardening, #2 Eval-at-Publish, #6 Workshop Pool Provisioner, #7 Wiki Builder, #8 Repo Bootstrap, #9 RoB Report.

Two sketches worth reading​

The report expressed its top two candidates as Coral workflow shapes, which is what makes them directly actionable against the node inventory in Phase 7:

Bulk Agent Security Hardening

Trigger -> Connector(Dataverse: list agents) -> Loop -> Switch(channel)
-> Connector(set security) -> Human review -> Note(audit) -> End

Eval-at-Publish ALM Gate

Trigger(publish) -> Function(run eval set) -> Classify(pass/fail) -> If/Else
-> [fail] Human review -> Note(scorecard) -> End

Both use node types this audit confirmed exist - Loop, Switch, If/Else, Function, Human review, Note. Neither has been built.

The second one is pointed directly at a failure this audit documented: Raybot's evaluation run scored 0% against questions that ground correctly in Preview. An eval gate built on that runtime today would block every publish. The candidate is sound; its dependency is not ready.

Candidates 11 through 25, by domain​

Copilot Studio agent operations

#CandidateOverlap
11Agent Clone / User-vs-Org Parallel Runnerflow-clone-runcontext
12Eval Scenario Library Expandernet-new
13Adaptive Card / Flashcard Generatornet-new

Dataverse / Power Platform

#Candidate
14Choice / Option-Set and Metadata Discovery Helper
15Power Automate Flow View / Pipeline Generator
16PAC / Auth Session Manager

M365 / Graph

#Candidate
17Expense Report Drafter
18Tenant Intelligence / Entra Enrichment
19Lokka-Powered Graph Sync

GitHub / DevOps

#Candidate
20Repo / Codebase Audit and Analysis Report
21Docusaurus / Docs-Site Publisher

Documentation and deck pipelines

#Candidate
22PPTX / Deck Builder (brand-aware)
23DOCX / Architecture Doc Generator

Knowledge graph and session intelligence

#Candidate
24Session-History Harvester
25Voice-of-Customer Aggregator

Azure and infrastructure were assessed as lower priority for Coral specifically: cost optimization reporting, observability and KQL workbooks, and passwordless Postgres setup.

Candidate 24 is the harvester that produced this list. It nominated itself, and the report says so explicitly rather than quietly omitting it - a self-nominating tool is a legitimate finding about the corpus, and hiding it would have understated how much of this work is meta.

Candidate 21 - a docs-site publisher - describes this wiki. The wiki was built by hand before the harvest ran.

What this list does not establish​

It is a ranking of opportunity, not a plan. Nothing here carries an estimate, an owner, a dependency graph, or evidence that the underlying platform can support it - as the Eval-at-Publish dependency above demonstrates.

The corpus is also single-operator, so "high value" here means "recurred often in one person's work." Treat the ranking as a prompt for a prioritisation conversation rather than its conclusion.