From 4f7b2e1f7326c834a089d73b1d3b101838decc48 Mon Sep 17 00:00:00 2001 From: Jo Schwandke Date: Thu, 5 Nov 2026 09:57:49 +0100 Subject: [PATCH] feat: point AI agents at the agent context from help, login and auth status An agent read meshstack --help twice and missed the agent context: the help named only llms.txt, at the end of a paragraph about JSON output. The help now tells agents in its second paragraph to read the agent context before they act. meshstack login and meshstack auth status end their table with the same pointer. The JSON output stays as it is. Co-Authored-By: Claude Opus 5.5 --- cmd/auth/status.md.tmpl | 1 + cmd/auth/status_test.go | 1 + cmd/meshstack/meshstack.go | 8 +++++--- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/cmd/auth/status.md.tmpl b/cmd/auth/status.md.tmpl index 65dcbaf0..4f0d7629 100644 --- a/cmd/auth/status.md.tmpl +++ b/cmd/auth/status.md.tmpl @@ -3,3 +3,4 @@ {{- with .MeshStackVersion}} | meshStack | {{cell .}} | {{- end}} +| AI agents | Read https://docs.meshcloud.io/agent-context/index.md before you act, starting with its guardrails | diff --git a/cmd/auth/status_test.go b/cmd/auth/status_test.go index 6d8a1f93..a09cd2cb 100644 --- a/cmd/auth/status_test.go +++ b/cmd/auth/status_test.go @@ -61,6 +61,7 @@ func TestStatusOfAnApiTokenFromTheEnvironment(t *testing.T) { assert.Contains(t, output, "| Credential | API token, from env MESHSTACK_API_TOKEN |\n") assert.Contains(t, output, "| | User runner |\n") assert.Contains(t, output, "| meshStack | 2026.40.0 |\n") + assert.Contains(t, output, "| AI agents | Read https://docs.meshcloud.io/agent-context/index.md") assert.NotContains(t, output, "\x1b[", "no terminal styling") }) diff --git a/cmd/meshstack/meshstack.go b/cmd/meshstack/meshstack.go index 9373e147..76bfe9e3 100644 --- a/cmd/meshstack/meshstack.go +++ b/cmd/meshstack/meshstack.go @@ -49,15 +49,17 @@ func newRootCommand() *cobra.Command { Start with meshstack login. It logs you in and keeps the login in a profile. +AI agents: read https://docs.meshcloud.io/agent-context/index.md before you act, starting with its +guardrails. The skill for this CLI is +https://github.com/meshcloud/meshstack-cli/blob/main/skills/meshstack-cli/SKILL.md. + The endpoint, the profile and the workspace come from a flag, else from the environment variable that the flag's help names, else from the profile, which holds an endpoint and a default workspace. Without a profile named, the one whose endpoint matches is used, else the current profile, which meshstack login sets. AI agents and scripts: add -o json to a list or show command to read JSON. meshstack api sends a -request to any path of the meshStack API, and meshstack api-docs describes that path. The skill for -agents is https://github.com/meshcloud/meshstack-cli/blob/main/skills/meshstack-cli/SKILL.md, and -https://docs.meshcloud.io/llms.txt leads to everything else about meshStack. +request to any path of the meshStack API, and meshstack api-docs describes that path. Colors follow NO_COLOR and FORCE_COLOR, and stay off in a pipe.`, Example: ` meshstack login