diff --git a/README.md b/README.md index 6d712c7c..6a0b9aa7 100644 --- a/README.md +++ b/README.md @@ -169,7 +169,6 @@ bugs, suggestions, or feedback. If you would like to give more candid feedback a [01]: ./docs/CODE_OF_CONDUCT.md [02]: ./docs/CONTRIBUTING.md [03]: ./docs/development/CreatingAnAgent.md -[04]: ./docs/media/AIShellDemo.gif [05]: ./docs/SUPPORT.md [06]: ./shell/agents/AIShell.Ollama.Agent/README.md [07]: ./shell/agents/AIShell.Interpreter.Agent/README.md @@ -185,7 +184,7 @@ bugs, suggestions, or feedback. If you would like to give more candid feedback a [17]: https://learn.microsoft.com/powershell/utility-modules/aishell/how-to/agent-azure [18]: https://github.com/PowerShell/PowerShell/releases/tag/v7.4.6 [19]: https://learn.microsoft.com/powershell/utility-modules/aishell/overview -[20]: ./docs/media/standalone-startup.gif -[21]: ./docs/media/aishellwithPowerShell.gif +[20]: ./docs/media/DemoGIFs/standalone-startup.gif +[21]: ./docs/media/DemoGIFs/azure-agent.gif [22]: https://aka.ms/AIShell-Feedback [logo]: ./docs/media/AIShellIconSVG.svg \ No newline at end of file diff --git a/docs/GettingStarted.md b/docs/GettingStarted.md deleted file mode 100644 index 60ad4a5f..00000000 --- a/docs/GettingStarted.md +++ /dev/null @@ -1,134 +0,0 @@ -# Getting Started with AIShell - -AIShell was created to help command line users find the right commands to use, recover from errors, -and better understand the commands and the output they produce. Follow along and walk through some -examples to get started with AIShell. - -## What is AIShell? - -AIShell is a command line interface (CLI) tool that allows you to interact with different AI -assistants within your CLI. You can choose which agent to use when you start AIShell. And you can -switch between them when you're using AIShell. - -Each AI assistant is known as an agent. In this version of AIShell, we include two agents, one -talking to an **Azure OpenAI** instance of **gpt-4o** and an Azure agent that can assist with Azure -CLI commands. During this initial development period, we provide you with access to Azure OpenAI. -When AIShell formally releases, you must provide your own Azure OpenAI deployment and update -the configuration to use your instance. - -The AIShell executable (`aish.exe`) can be run in your command shell for a full-screen experience. -If you're using Windows Terminal and PowerShell 7, you can use the **AIShell** PowerShell module to -create a split-screen or sidecar experience. This is the recommended way to use AIShell because -you get deeper integration with the shell. These features include: - -- Inserting code from the sidecar response directly into the working shell -- Multi-step commands are put into the Predictive IntelliSense buffer for quick acceptance -- Easy, single-command error recovery - -## Starting AIShell - -Use the `Start-AIShell` command in the **AIShell** module to open a split pane experience in Windows -Terminal. When AIShell starts, it prompts you to choose an agent. - -![An animation showing Getting Started with AIShell.](/docs/media/startAISHell.gif) - -## Using AIShell - -Now that you have selected an agent, you can begin chatting with it. The installed Azure OpenAI -agent is configured to be a PowerShell expert. This means we've modified the system prompt -to say it should act like a PowerShell expert. It's not trained on any specific PowerShell code or -documentation. In the final version, you must configure the agent with your endpoint, API keys, -and system prompt before using it. For this walkthrough, we've performed these steps for you. - -The Azure agent is designed to bring the Copilot in Azure experience directly to your command line. It -provides assistance for Azure CLI and Azure PowerShell commands. Typically, you need to sign into -Azure using the `az login` or `Connect-AzAccount` commands. However, for this walkthrough, we've done -that for you. - -## Use AIShell to interact with the agents - -Use these sample queries with each agent. - -Azure OpenAI Agent - -- "How do I create a text file named helloworld in PowerShell?" -- "What is the difference between a switch and a parameter in PowerShell?" -- How do I get the top 10 most CPU intensive processes on my computer? - -Azure Agent - -- "How do I create a new resource group with Azure CLI?" -- "How can I list out the storage accounts I have in Azure PowerShell?" -- "What is Application Insights?" -- "How to create a web app with Azure CLI?" - -Here's a quick demo showing the Azure Agent in action: - -![An animation showing Azure Agent in action.](/docs/media/AzureAgent.gif) - -### Switching Agents - -You can switch between agents using the `@` syntax in your chat messages. For example, - -![An animation showing switching between two agents with the @ sign](/docs/media/SwitchingAgents.gif) - -You can also use a chat command to switch agents. For example, to switch to the `openai-gpt` agent, -use `/agent use openai-gpt`. - -### Chat commands - -By default, `aish` provides a base set of chat commands used to interact with the AI model. To get a -list of commands, use the `/help` command in the chat session. - -``` - Name Description Source -────────────────────────────────────────────────────────────────────── - /agent Command for agent management. Core - /cls Clear the screen. Core - /code Command to interact with the code generated. Core - /dislike Dislike the last response and send feedback. Core - /exit Exit the interactive session. Core - /help Show all available commands. Core - /like Like the last response and send feedback. Core - /refresh Refresh the chat session. Core - /render Render a markdown file, for diagnosis purpose. Core - /retry Regenerate a new response for the last query. Core -``` - -### Inserting code - -When chatting with the agent, you can use the `/code post` command to automatically insert -the code from the response into the working shell. This is the simplest way to quickly get the code -you need to run in your shell. You can also use the hot key Ctrl+d, -Ctrl+d to insert the code into the working shell. - -![An animation showing Inserting Code with AIShell.](/docs/media/InsertCode.gif) - - -### Key bindings for commands - -AIShell has key bindings for the `/code` command. They key bindings are currently hard-coded, but -custom key bindings will be supported in future releases. - -| Key bindings | Command | Functionality | -| -------------------------------------------------------- | ---------------- | ------------------------------------------------------------------- | -| Ctrl+dCtrl+c | `/code copy` | Copy _all_ the generated code snippets to clipboard | -| Ctrl+\ | `/code copy ` | Copy the _n-th_ generated code snippet to clipboard | -| Ctrl+dCtrl+d | `/code post` | Post _all_ the generated code snippets to the connected application | -| Ctrl+d\ | `/code post ` | Post the _n-th_ generated code snippet to the connected application | - -### Resolving Errors - -If you encounter an error in your working terminal, you can use the `Resolve-Error` cmdlet to send -that error to the open AIShell window for resolution. This command asks the AI model to help you -resolve the error. - -![An animation showing Resolving Errors with AIShell.](/docs/media/ResolveError.gif) - -### Invoking AIShell - -You can use the `Invoke-AIShell` cmdlet to send queries to the current agent in the open AIShell window. -This command allows you to interact with the AI model from your working terminal. - -![An animation using Invoke-AIShell.](/docs/media/InvokeAIShell.gif) - diff --git a/docs/media/AIShellDemo.gif b/docs/media/AIShellDemo.gif deleted file mode 100644 index 732797e5..00000000 Binary files a/docs/media/AIShellDemo.gif and /dev/null differ diff --git a/docs/media/AIShellPredictiveIntelliSenseDemo.gif b/docs/media/AIShellPredictiveIntelliSenseDemo.gif deleted file mode 100644 index 159537e6..00000000 Binary files a/docs/media/AIShellPredictiveIntelliSenseDemo.gif and /dev/null differ diff --git a/docs/media/AzureAgent.gif b/docs/media/AzureAgent.gif deleted file mode 100644 index 9d3ef285..00000000 Binary files a/docs/media/AzureAgent.gif and /dev/null differ diff --git a/docs/media/DemoGIFs/Invoke-AIShell.gif b/docs/media/DemoGIFs/Invoke-AIShell.gif new file mode 100644 index 00000000..2db7d0c8 Binary files /dev/null and b/docs/media/DemoGIFs/Invoke-AIShell.gif differ diff --git a/docs/media/DemoGIFs/Resolve-error.gif b/docs/media/DemoGIFs/Resolve-error.gif new file mode 100644 index 00000000..a96028fa Binary files /dev/null and b/docs/media/DemoGIFs/Resolve-error.gif differ diff --git a/docs/media/DemoGIFs/azure-agent.gif b/docs/media/DemoGIFs/azure-agent.gif new file mode 100644 index 00000000..736f506c Binary files /dev/null and b/docs/media/DemoGIFs/azure-agent.gif differ diff --git a/docs/media/DemoGIFs/insert-code.gif b/docs/media/DemoGIFs/insert-code.gif new file mode 100644 index 00000000..54abc7d7 Binary files /dev/null and b/docs/media/DemoGIFs/insert-code.gif differ diff --git a/docs/media/DemoGIFs/predictiveintellisensedemo.gif b/docs/media/DemoGIFs/predictiveintellisensedemo.gif new file mode 100644 index 00000000..dd61d1b3 Binary files /dev/null and b/docs/media/DemoGIFs/predictiveintellisensedemo.gif differ diff --git a/docs/media/standalone-startup.gif b/docs/media/DemoGIFs/standalone-startup.gif similarity index 100% rename from docs/media/standalone-startup.gif rename to docs/media/DemoGIFs/standalone-startup.gif diff --git a/docs/media/DemoGIFs/start-aishell.gif b/docs/media/DemoGIFs/start-aishell.gif new file mode 100644 index 00000000..7f722ad1 Binary files /dev/null and b/docs/media/DemoGIFs/start-aishell.gif differ diff --git a/docs/media/DemoGIFs/switch-agents.gif b/docs/media/DemoGIFs/switch-agents.gif new file mode 100644 index 00000000..71ab58ed Binary files /dev/null and b/docs/media/DemoGIFs/switch-agents.gif differ diff --git a/docs/media/AIShellIconPNG.png b/docs/media/Icons/AIShellIconPNG.png similarity index 100% rename from docs/media/AIShellIconPNG.png rename to docs/media/Icons/AIShellIconPNG.png diff --git a/docs/media/AIShellIconSVG.svg b/docs/media/Icons/AIShellIconSVG.svg similarity index 100% rename from docs/media/AIShellIconSVG.svg rename to docs/media/Icons/AIShellIconSVG.svg diff --git a/docs/media/InsertCode.gif b/docs/media/InsertCode.gif deleted file mode 100644 index ba6e221c..00000000 Binary files a/docs/media/InsertCode.gif and /dev/null differ diff --git a/docs/media/InvokeAIShell.gif b/docs/media/InvokeAIShell.gif deleted file mode 100644 index 086d3081..00000000 Binary files a/docs/media/InvokeAIShell.gif and /dev/null differ diff --git a/docs/media/ResolveError.gif b/docs/media/ResolveError.gif deleted file mode 100644 index 84023d8c..00000000 Binary files a/docs/media/ResolveError.gif and /dev/null differ diff --git a/docs/media/ShellIntegrationDemo.gif b/docs/media/ShellIntegrationDemo.gif deleted file mode 100644 index 045ebcb7..00000000 Binary files a/docs/media/ShellIntegrationDemo.gif and /dev/null differ diff --git a/docs/media/SwitchingAgents.gif b/docs/media/SwitchingAgents.gif deleted file mode 100644 index fda7416d..00000000 Binary files a/docs/media/SwitchingAgents.gif and /dev/null differ diff --git a/docs/media/aishellwithPowerShell.gif b/docs/media/aishellwithPowerShell.gif deleted file mode 100644 index 9d3ef285..00000000 Binary files a/docs/media/aishellwithPowerShell.gif and /dev/null differ diff --git a/docs/media/startAISHell.gif b/docs/media/startAISHell.gif deleted file mode 100644 index 56beb511..00000000 Binary files a/docs/media/startAISHell.gif and /dev/null differ diff --git a/shell/AIShell.Kernel/Shell.cs b/shell/AIShell.Kernel/Shell.cs index e797eef3..83866aed 100644 --- a/shell/AIShell.Kernel/Shell.cs +++ b/shell/AIShell.Kernel/Shell.cs @@ -286,7 +286,7 @@ private void LoadAvailableAgents() chosenAgent ??= _agents.Count is 1 ? _agents[0] : Host.PromptForSelectionAsync( - title: "Welcome to AIShell! We’re excited to have you explore our [bold]Public Preview[/]. Documentation is available at [link=https://aka.ms/AIShell-Docs]aka.ms/AIShell-Docs[/], and we’d love to hear your thoughts - share your feedback with us at [link=https://aka.ms/AIShell-Feedback]aka.ms/AIShell-Feedback[/].\n\n[orange1]Please select an AI [Blue]agent[/] to use[/]:\n[grey](You can switch to another agent later by typing [Blue]@[/])[/]", + title: "Welcome to AI Shell! We’re excited to have you explore our [bold]Public Preview[/]. Documentation is available at [link=https://aka.ms/AIShell-Docs]aka.ms/AIShell-Docs[/], and we’d love to hear your thoughts - share your feedback with us at [link=https://aka.ms/AIShell-Feedback]aka.ms/AIShell-Feedback[/].\n\n[orange1]Please select an AI [Blue]agent[/] to use[/]:\n[grey](You can switch to another agent later by typing [Blue]@[/])[/]", choices: _agents, converter: static a => a.Impl.Name) .GetAwaiter().GetResult(); diff --git a/shell/agents/Microsoft.Azure.Agent/README.md b/shell/agents/Microsoft.Azure.Agent/README.md index 80c87f56..f1b456e9 100644 --- a/shell/agents/Microsoft.Azure.Agent/README.md +++ b/shell/agents/Microsoft.Azure.Agent/README.md @@ -1,5 +1,14 @@ # Copilot in Azure Agent -For more details about this agent please see, [Copilot in Azure Agent][01]. +This agent is designed to connect you to the [Copilot in Azure][03] experience directly from your command +line. It provides assistance for Azure CLI commands, Azure PowerShell commands, and general Azure +knowledge. To use this agent, you need to sign in to Azure using the az login command from Azure +CLI. For more details about this agent please see, [Copilot in Azure Agent][01]. -[01]: https://learn.microsoft.com/powershell/utility-modules/aishell/how-to/agent-azure \ No newline at end of file +![Copilot in Azure Agent][02] + + + +[01]: https://learn.microsoft.com/powershell/utility-modules/aishell/how-to/agent-azure +[02]: ../../../docs/media/DemoGIFs/azure-agent.gif +[03]: https://azure.microsoft.com/products/copilot \ No newline at end of file