-
Notifications
You must be signed in to change notification settings - Fork 258
neo slash commands and instructions blog/docs #16767
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
13 commits
Select commit
Hold shift + click to select a range
6659a7a
init
kramhuber adbe323
new meta
kramhuber 23f99f0
tag update
kramhuber 3f08058
title change
kramhuber e5d3ed0
docs v1
kramhuber 0b7e371
fixups
kramhuber b320b91
fixups
kramhuber 18f3941
Clarify instructions for creating custom commands
kramhuber 88dbfd2
Fix formatting in slash commands documentation
kramhuber 5aa6476
Clarify Neo access instructions in documentation
kramhuber 6791405
Apply suggestion from @tyler-ball
kramhuber 0881902
fixup
kramhuber 677f1c7
enable post
kramhuber File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,66 @@ | ||
| --- | ||
| title: "Encode What You Know With Neo: Custom Instructions and Slash Commands" | ||
|
|
||
| date: 2025-12-09 | ||
|
|
||
| draft: false | ||
|
|
||
| meta_desc: Custom Instructions teach Neo your organization's standards. Slash Commands turn proven prompts into shortcuts anyone can use. Both are available now. | ||
|
|
||
| meta_image: meta.png | ||
|
|
||
| authors: | ||
| - neo-team | ||
|
|
||
| tags: | ||
| - ai | ||
| - ai-agents | ||
| - platform-engineering | ||
| - pulumi-neo | ||
|
|
||
| schema_type: auto | ||
|
|
||
| --- | ||
|
|
||
| Every organization builds up knowledge over time: naming standards, compliance requirements, patterns your team has settled on, and proven approaches to common tasks. Until now, bringing this knowledge into Neo meant repeating it manually each time - specifying preferences, describing how your team works, and recreating prompts that someone already perfected. | ||
|
|
||
| Two new features change this. Custom Instructions teach Neo your standards so it applies them automatically. Slash Commands capture proven prompts so anyone on your team can use them with a keystroke. | ||
|
|
||
| <!--more--> | ||
|
|
||
| ## Custom Instructions: Standards Applied Automatically | ||
|
|
||
| Custom Instructions let you define what Neo should know about your organization and how it should behave. This includes naming conventions, required tags and compliance requirements, technology preferences, and cost guidelines - but also actions Neo should take automatically, like including a rough cost estimate whenever it proposes new infrastructure. You configure them once in your organization settings, and Neo applies them to every task from that point forward. | ||
|
|
||
| Consider the difference. Before Custom Instructions, a simple request required loading context: | ||
|
|
||
| > "Neo, update our Lambda functions to Node 20. Remember, we use TypeScript exclusively, our naming convention is service-region-env, we always deploy to us-east-1 first for testing, and all resources need our standard compliance tags including CostCenter and DataClassification." | ||
|
|
||
| With those details captured in Custom Instructions, the same request becomes: | ||
|
|
||
| > "Neo, update our Lambda functions to Node 20." | ||
|
|
||
| Neo already knows how your team works, so you can focus on what you're trying to accomplish. | ||
|
|
||
| ## Slash Commands: Capture What Works | ||
|
|
||
| Over time, your team figures out the right way to ask Neo for certain tasks. Maybe someone wrote the perfect prompt for checking policy violations, or discovered an approach to drift detection that catches issues others miss. That knowledge tends to live in someone's head or buried in a Slack thread. | ||
|
|
||
| Slash Commands turn these prompts into shortcuts anyone can use. When you type `/` in Neo, you'll see available commands, select one, and Neo receives the full prompt behind it. | ||
|
|
||
|  | ||
|
|
||
| Neo ships with built-in commands for common tasks: | ||
|
|
||
| | Command | What it does | | ||
| |---------|--------------| | ||
| | `/get-started` | Learn what Neo can do and how to structure effective requests | | ||
| | `/policy-issues-report` | Lists your most severe policy violations | | ||
| | `/component-version-report` | Lists components that are outdated in your private registry | | ||
| | `/provider-version-report` | Lists providers that are outdated | | ||
|
|
||
| You can also create your own. In Pulumi Cloud, you define the prompt - no coding required. Once saved, your team can start using it immediately. If a command needs more information than what's provided, Neo will ask follow-up questions to fill in the gaps. | ||
kramhuber marked this conversation as resolved.
Show resolved
Hide resolved
kramhuber marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
|
||
| ## Get Started | ||
|
|
||
| [Custom Instructions](/docs/ai/settings/#custom-instructions) and [Slash Commands](/docs/ai/settings/#slash-commands) are available now. You can configure Custom Instructions in Neo Settings. Slash Commands come with several built-in options, and you can create custom ones tailored to your workflow. | ||
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,137 @@ | ||
| --- | ||
| title: Settings | ||
| title_tag: Neo Settings | ||
| h1: Neo Settings | ||
| meta_desc: Configure Neo for your organization with Custom Instructions, Slash Commands, access controls, and task modes. | ||
| meta_image: /images/docs/meta-images/docs-meta.png | ||
| menu: | ||
| ai: | ||
| name: Settings | ||
| parent: ai-home | ||
| weight: 50 | ||
| identifier: ai-settings | ||
| --- | ||
|
|
||
| Organization-level settings control how Neo behaves and what capabilities are available to your team. | ||
|
|
||
| ## Neo Access | ||
|
|
||
| Neo is enabled by default. To control Neo access for your organization: | ||
|
|
||
| 1. Navigate to Neo Settings from the Pulumi left navigation | ||
| 1. Select the "General" tab | ||
| 1. Toggle "Enable Neo for organization" on or off | ||
|
|
||
|  | ||
|
|
||
| {{% notes type="info" %}} | ||
| If Pulumi Copilot was previously disabled, Neo will need to be enabled as outlined below. | ||
| {{% /notes %}} | ||
|
|
||
| ## Custom Instructions | ||
|
|
||
| Custom Instructions teach Neo your organization's standards, preferences, and requirements so they're applied automatically to every task. Instead of repeating context in each task, you define it once from a central location. | ||
|
|
||
| ### What to Include | ||
|
|
||
| Custom Instructions can define many things, including: | ||
|
|
||
| - **Naming conventions**: How resources, stacks, and projects should be named | ||
| - **Compliance requirements**: Required tags, labels, or configurations | ||
| - **Technology preferences**: Preferred languages, frameworks, or cloud services | ||
| - **Cost guidelines**: Budget considerations or cost optimization preferences | ||
| - **Automatic actions**: Behaviors Neo should apply automatically, like including cost estimates | ||
|
|
||
| ### Example | ||
|
|
||
| ```text | ||
| All AWS resources must follow these standards: | ||
| - Naming convention: {service}-{environment}-{region} | ||
| - Required tags: environment and owner | ||
| - Use encryption at rest for all storage resources | ||
| - Always include estimated monthly costs in pull requests when proposing new infrastructure | ||
| ``` | ||
|
|
||
| When you ask Neo to create resources, it automatically applies your organization's standards without you needing to repeat them in every conversation. | ||
|
|
||
| ### Configuring Custom Instructions | ||
|
|
||
| 1. Navigate to Neo Settings in Pulumi Cloud | ||
| 1. Select the "Organization instructions" tab | ||
| 1. Enter your organization's standards and preferences | ||
| 1. Save changes | ||
|
|
||
|  | ||
|
|
||
| ### Custom Instructions Best Practices | ||
|
|
||
| - Keep instructions concise and focused on standards that apply across all tasks | ||
| - Update instructions as your team's practices evolve | ||
| - Test instructions in individual prompts before rolling out broadly | ||
|
|
||
| ## Slash Commands | ||
|
|
||
| Slash Commands capture proven prompts as shortcuts that anyone on your team can use. When you type `/` in a Neo conversation, you'll see available commands. Selecting a command sends the full prompt to Neo. | ||
|
|
||
| ### Built-in Commands | ||
|
|
||
| Neo includes several built-in commands for common infrastructure tasks: | ||
|
|
||
| | Command | Description | | ||
| |---------|-------------| | ||
| | `/get-started` | Learn what Neo can do and how to structure effective requests | | ||
| | `/policy-issues-report` | Lists your most severe policy violations | | ||
| | `/component-version-report` | Lists components that are outdated in your private registry | | ||
| | `/provider-version-report` | Lists providers that are outdated | | ||
|
|
||
| ### Creating Custom Commands | ||
|
|
||
| You can create organization-specific commands to capture your team's proven prompts: | ||
|
|
||
| 1. Navigate to Neo Settings in Pulumi Cloud | ||
| 1. Select the "General" tab | ||
| 1. Scroll to the "Slash commands" section | ||
| 1. Click "Add custom slash command" | ||
| 1. Enter a name and description | ||
| 1. Define the prompt | ||
| 1. Save the command | ||
|
|
||
|  | ||
|
|
||
| Once saved, the command is immediately available to all team members. | ||
|
|
||
| ### Viewing Slash Command Instructions | ||
|
|
||
| When you have selected a slash command in a new or existing Neo task, click on the highlighted command name to view the actual prompt. | ||
|
|
||
| ### Slash Command Best Practices | ||
kramhuber marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
|
||
| - Create commands for frequently-used prompts that have proven effective | ||
| - Use clear, descriptive names that indicate what the command does | ||
|
|
||
| ## Task Modes | ||
|
|
||
| Task modes are presets that control what actions Neo can take automatically. Each mode represents a predefined configuration of allowed commands. New tasks start with a default mode, which users can adjust or override during the task. | ||
|
|
||
| ### Available Modes | ||
|
|
||
| Organization administrators can set the default task mode. The available modes determine how much automation Neo applies: | ||
|
|
||
| - **Auto mode**: Automatically approves all requests without user intervention | ||
| - **Balanced mode**: Automatically approves requests that don't run `pulumi up` | ||
| - **Review mode**: Requires manual approval before any request runs | ||
|
|
||
| ### Configuring Default Task Mode | ||
|
|
||
| 1. Navigate to Neo Settings in Pulumi Cloud | ||
| 1. Select the "General" tab | ||
| 1. Locate the "Task mode" section | ||
| 1. Select the default mode from the dropdown | ||
| 1. Save changes | ||
|
|
||
|  | ||
|
|
||
| ### Task Mode Best Practices | ||
|
|
||
| - Start with the most restrictive mode -- it's best for most organizations | ||
| - Remember, users can override the default for individual tasks when needed | ||
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.