bcquality/community/knowledge/agents/instructions-describe-work-not-tool-ids.md
Stefano Demiliani 53e2cf2fa4
Add community guidance and review support for Business Central agents (#137)
* feat(community/agents): add AL agent quality guidance

- add 20 agent knowledge rules with good and bad AL samples
- clarify setup dialog shape, temporary persistence, permissions, profiles, instructions, capability registration, and interface wiring
- add the community-owned AL agents review skill
- make review fixture discovery layer-aware with custom, community, and Microsoft precedence
- document layer-aware evaluation behavior

* fix(community/agents): align setup and permission samples

- mark agent setup pages as non-extensible where required
- narrow the agent profile by hiding an unrelated sales-order field
- define a dedicated read-only permission set for the sales review agent
- assign AL-defined permission sets with system scope and the owning app ID
- clarify the permission scope guidance for default access controls

* Address agent review feedback
2026-09-02 16:06:25 +02:00

1.2 KiB

bc-version domain keywords technologies countries application-area
27..
agents
instructions
tools
invoke-action
memorize
page-actions
al
w1
all

Instructions describe outcomes, not page action or tool names

Description

Agent tools are the UI the profile exposes. Action names and tool ids change across pages and versions. Best-practice guidance is to say what to accomplish, not which tool to invoke. Page state is also not fully in history; values needed later must be memorized. Models paste Promoted action names into the prompt.

Best Practice

Write steps as business outcomes (release the order, set the hold reason). Tell the agent to memorize identifiers it must reuse. Do not hard-code action captions or tool ids.

See sample: instructions-describe-work-not-tool-ids.good.al.

Anti Pattern

Instructions that say invoke SalesOrder.Post_Promoted or use tool page-42-action-3. Detection signal: instruction text containing Promoted action names or tool identifiers.

See sample: instructions-describe-work-not-tool-ids.bad.al.

See also

instruction-structure-is-role-rules-steps.md defines the containing document structure, and use-documented-instruction-keywords.md identifies runtime-recognized phrases.