This is page 9 of 145. Use http://codebase.md/microsoft/semanticworkbench?lines=true&page={x} to view the full context.
# Directory Structure
```
├── .devcontainer
│ ├── .vscode
│ │ └── settings.json
│ ├── devcontainer.json
│ ├── OPTIMIZING_FOR_CODESPACES.md
│ ├── POST_SETUP_README.md
│ └── README.md
├── .dockerignore
├── .gitattributes
├── .github
│ ├── policheck.yml
│ └── workflows
│ ├── assistants-codespace-assistant.yml
│ ├── assistants-document-assistant.yml
│ ├── assistants-explorer-assistant.yml
│ ├── assistants-guided-conversation-assistant.yml
│ ├── assistants-knowledge-transfer-assistant.yml
│ ├── assistants-navigator-assistant.yml
│ ├── assistants-project-assistant.yml
│ ├── assistants-prospector-assistant.yml
│ ├── assistants-skill-assistant.yml
│ ├── libraries.yml
│ ├── mcp-server-giphy.yml
│ ├── mcp-server-memory-filesystem-edit.yml
│ ├── mcp-server-memory-user-bio.yml
│ ├── mcp-server-memory-whiteboard.yml
│ ├── mcp-server-open-deep-research-clone.yml
│ ├── mcp-server-web-research.yml
│ ├── workbench-app.yml
│ └── workbench-service.yml
├── .gitignore
├── .multi-root-tools
│ ├── Makefile
│ └── README.md
├── .vscode
│ ├── extensions.json
│ ├── launch.json
│ └── settings.json
├── ai_context
│ └── generated
│ ├── ASPIRE_ORCHESTRATOR.md
│ ├── ASSISTANT_CODESPACE.md
│ ├── ASSISTANT_DOCUMENT.md
│ ├── ASSISTANT_NAVIGATOR.md
│ ├── ASSISTANT_PROJECT.md
│ ├── ASSISTANT_PROSPECTOR.md
│ ├── ASSISTANTS_OTHER.md
│ ├── ASSISTANTS_OVERVIEW.md
│ ├── CONFIGURATION.md
│ ├── DOTNET_LIBRARIES.md
│ ├── EXAMPLES.md
│ ├── MCP_SERVERS.md
│ ├── PYTHON_LIBRARIES_AI_CLIENTS.md
│ ├── PYTHON_LIBRARIES_CORE.md
│ ├── PYTHON_LIBRARIES_EXTENSIONS.md
│ ├── PYTHON_LIBRARIES_SKILLS.md
│ ├── PYTHON_LIBRARIES_SPECIALIZED.md
│ ├── TOOLS.md
│ ├── WORKBENCH_FRONTEND.md
│ └── WORKBENCH_SERVICE.md
├── aspire-orchestrator
│ ├── .editorconfig
│ ├── Aspire.AppHost
│ │ ├── .gitignore
│ │ ├── appsettings.json
│ │ ├── Aspire.AppHost.csproj
│ │ ├── Program.cs
│ │ └── Properties
│ │ └── launchSettings.json
│ ├── Aspire.Extensions
│ │ ├── Aspire.Extensions.csproj
│ │ ├── Dashboard.cs
│ │ ├── DockerFileExtensions.cs
│ │ ├── PathNormalizer.cs
│ │ ├── UvAppHostingExtensions.cs
│ │ ├── UvAppResource.cs
│ │ ├── VirtualEnvironment.cs
│ │ └── WorkbenchServiceHostingExtensions.cs
│ ├── Aspire.ServiceDefaults
│ │ ├── Aspire.ServiceDefaults.csproj
│ │ └── Extensions.cs
│ ├── README.md
│ ├── run.sh
│ ├── SemanticWorkbench.Aspire.sln
│ └── SemanticWorkbench.Aspire.sln.DotSettings
├── assistants
│ ├── codespace-assistant
│ │ ├── .claude
│ │ │ └── settings.local.json
│ │ ├── .env.example
│ │ ├── .vscode
│ │ │ ├── extensions.json
│ │ │ ├── launch.json
│ │ │ └── settings.json
│ │ ├── assistant
│ │ │ ├── __init__.py
│ │ │ ├── assets
│ │ │ │ ├── icon_context_transfer.svg
│ │ │ │ └── icon.svg
│ │ │ ├── chat.py
│ │ │ ├── config.py
│ │ │ ├── helpers.py
│ │ │ ├── response
│ │ │ │ ├── __init__.py
│ │ │ │ ├── completion_handler.py
│ │ │ │ ├── models.py
│ │ │ │ ├── request_builder.py
│ │ │ │ ├── response.py
│ │ │ │ ├── step_handler.py
│ │ │ │ └── utils
│ │ │ │ ├── __init__.py
│ │ │ │ ├── abbreviations.py
│ │ │ │ ├── formatting_utils.py
│ │ │ │ ├── message_utils.py
│ │ │ │ └── openai_utils.py
│ │ │ ├── text_includes
│ │ │ │ ├── card_content_context_transfer.md
│ │ │ │ ├── card_content.md
│ │ │ │ ├── codespace_assistant_info.md
│ │ │ │ ├── context_transfer_assistant_info.md
│ │ │ │ ├── guardrails_prompt.txt
│ │ │ │ ├── guidance_prompt_context_transfer.txt
│ │ │ │ ├── guidance_prompt.txt
│ │ │ │ ├── instruction_prompt_context_transfer.txt
│ │ │ │ └── instruction_prompt.txt
│ │ │ └── whiteboard
│ │ │ ├── __init__.py
│ │ │ ├── _inspector.py
│ │ │ └── _whiteboard.py
│ │ ├── assistant.code-workspace
│ │ ├── Makefile
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ └── uv.lock
│ ├── document-assistant
│ │ ├── .env.example
│ │ ├── .vscode
│ │ │ ├── launch.json
│ │ │ └── settings.json
│ │ ├── assistant
│ │ │ ├── __init__.py
│ │ │ ├── assets
│ │ │ │ └── icon.svg
│ │ │ ├── chat.py
│ │ │ ├── config.py
│ │ │ ├── context_management
│ │ │ │ ├── __init__.py
│ │ │ │ └── inspector.py
│ │ │ ├── filesystem
│ │ │ │ ├── __init__.py
│ │ │ │ ├── _convert.py
│ │ │ │ ├── _file_sources.py
│ │ │ │ ├── _filesystem.py
│ │ │ │ ├── _inspector.py
│ │ │ │ ├── _model.py
│ │ │ │ ├── _prompts.py
│ │ │ │ └── _tasks.py
│ │ │ ├── guidance
│ │ │ │ ├── __init__.py
│ │ │ │ ├── dynamic_ui_inspector.py
│ │ │ │ ├── guidance_config.py
│ │ │ │ ├── guidance_prompts.py
│ │ │ │ └── README.md
│ │ │ ├── response
│ │ │ │ ├── __init__.py
│ │ │ │ ├── completion_handler.py
│ │ │ │ ├── models.py
│ │ │ │ ├── prompts.py
│ │ │ │ ├── responder.py
│ │ │ │ └── utils
│ │ │ │ ├── __init__.py
│ │ │ │ ├── formatting_utils.py
│ │ │ │ ├── message_utils.py
│ │ │ │ ├── openai_utils.py
│ │ │ │ ├── tokens_tiktoken.py
│ │ │ │ └── workbench_messages.py
│ │ │ ├── text_includes
│ │ │ │ └── document_assistant_info.md
│ │ │ ├── types.py
│ │ │ └── whiteboard
│ │ │ ├── __init__.py
│ │ │ ├── _inspector.py
│ │ │ └── _whiteboard.py
│ │ ├── assistant.code-workspace
│ │ ├── CLAUDE.md
│ │ ├── Makefile
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ ├── tests
│ │ │ ├── __init__.py
│ │ │ ├── test_convert.py
│ │ │ └── test_data
│ │ │ ├── blank_image.png
│ │ │ ├── Formatting Test.docx
│ │ │ ├── sample_data.csv
│ │ │ ├── sample_data.xlsx
│ │ │ ├── sample_page.html
│ │ │ ├── sample_presentation.pptx
│ │ │ └── simple_pdf.pdf
│ │ └── uv.lock
│ ├── explorer-assistant
│ │ ├── .env.example
│ │ ├── .vscode
│ │ │ ├── launch.json
│ │ │ └── settings.json
│ │ ├── assistant
│ │ │ ├── __init__.py
│ │ │ ├── chat.py
│ │ │ ├── config.py
│ │ │ ├── helpers.py
│ │ │ ├── response
│ │ │ │ ├── __init__.py
│ │ │ │ ├── model.py
│ │ │ │ ├── response_anthropic.py
│ │ │ │ ├── response_openai.py
│ │ │ │ └── response.py
│ │ │ └── text_includes
│ │ │ └── guardrails_prompt.txt
│ │ ├── assistant.code-workspace
│ │ ├── Makefile
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ └── uv.lock
│ ├── guided-conversation-assistant
│ │ ├── .env.example
│ │ ├── .vscode
│ │ │ ├── launch.json
│ │ │ └── settings.json
│ │ ├── assistant
│ │ │ ├── __init__.py
│ │ │ ├── agents
│ │ │ │ ├── guided_conversation
│ │ │ │ │ ├── config.py
│ │ │ │ │ ├── definition.py
│ │ │ │ │ └── definitions
│ │ │ │ │ ├── er_triage.py
│ │ │ │ │ ├── interview.py
│ │ │ │ │ ├── patient_intake.py
│ │ │ │ │ └── poem_feedback.py
│ │ │ │ └── guided_conversation_agent.py
│ │ │ ├── chat.py
│ │ │ ├── config.py
│ │ │ └── text_includes
│ │ │ └── guardrails_prompt.txt
│ │ ├── assistant.code-workspace
│ │ ├── Makefile
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ └── uv.lock
│ ├── knowledge-transfer-assistant
│ │ ├── .claude
│ │ │ └── settings.local.json
│ │ ├── .env.example
│ │ ├── .vscode
│ │ │ ├── launch.json
│ │ │ └── settings.json
│ │ ├── assistant
│ │ │ ├── __init__.py
│ │ │ ├── agentic
│ │ │ │ ├── __init__.py
│ │ │ │ ├── analysis.py
│ │ │ │ ├── coordinator_support.py
│ │ │ │ └── team_welcome.py
│ │ │ ├── assets
│ │ │ │ ├── icon-knowledge-transfer.svg
│ │ │ │ └── icon.svg
│ │ │ ├── assistant.py
│ │ │ ├── common.py
│ │ │ ├── config.py
│ │ │ ├── conversation_clients.py
│ │ │ ├── conversation_share_link.py
│ │ │ ├── data.py
│ │ │ ├── domain
│ │ │ │ ├── __init__.py
│ │ │ │ ├── audience_manager.py
│ │ │ │ ├── information_request_manager.py
│ │ │ │ ├── knowledge_brief_manager.py
│ │ │ │ ├── knowledge_digest_manager.py
│ │ │ │ ├── learning_objectives_manager.py
│ │ │ │ └── share_manager.py
│ │ │ ├── files.py
│ │ │ ├── logging.py
│ │ │ ├── notifications.py
│ │ │ ├── respond.py
│ │ │ ├── storage_models.py
│ │ │ ├── storage.py
│ │ │ ├── string_utils.py
│ │ │ ├── text_includes
│ │ │ │ ├── assistant_info.md
│ │ │ │ ├── card_content.md
│ │ │ │ ├── coordinator_instructions.txt
│ │ │ │ ├── coordinator_role.txt
│ │ │ │ ├── knowledge_digest_instructions.txt
│ │ │ │ ├── knowledge_digest_prompt.txt
│ │ │ │ ├── share_information_request_detection.txt
│ │ │ │ ├── team_instructions.txt
│ │ │ │ ├── team_role.txt
│ │ │ │ └── welcome_message_generation.txt
│ │ │ ├── tools
│ │ │ │ ├── __init__.py
│ │ │ │ ├── base.py
│ │ │ │ ├── information_requests.py
│ │ │ │ ├── learning_objectives.py
│ │ │ │ ├── learning_outcomes.py
│ │ │ │ ├── progress_tracking.py
│ │ │ │ └── share_setup.py
│ │ │ ├── ui_tabs
│ │ │ │ ├── __init__.py
│ │ │ │ ├── brief.py
│ │ │ │ ├── common.py
│ │ │ │ ├── debug.py
│ │ │ │ ├── learning.py
│ │ │ │ └── sharing.py
│ │ │ └── utils.py
│ │ ├── CLAUDE.md
│ │ ├── docs
│ │ │ ├── design
│ │ │ │ ├── actions.md
│ │ │ │ └── inference.md
│ │ │ ├── DEV_GUIDE.md
│ │ │ ├── how-kta-works.md
│ │ │ ├── JTBD.md
│ │ │ ├── knowledge-transfer-goals.md
│ │ │ ├── learning_assistance.md
│ │ │ ├── notable_claude_conversations
│ │ │ │ ├── clarifying_quad_modal_design.md
│ │ │ │ ├── CLAUDE_PROMPTS.md
│ │ │ │ ├── transfer_state.md
│ │ │ │ └── trying_the_context_agent.md
│ │ │ └── opportunities-of-knowledge-transfer.md
│ │ ├── knowledge-transfer-assistant.code-workspace
│ │ ├── Makefile
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ ├── tests
│ │ │ ├── __init__.py
│ │ │ ├── test_artifact_loading.py
│ │ │ ├── test_inspector.py
│ │ │ ├── test_share_manager.py
│ │ │ ├── test_share_storage.py
│ │ │ ├── test_share_tools.py
│ │ │ └── test_team_mode.py
│ │ └── uv.lock
│ ├── Makefile
│ ├── navigator-assistant
│ │ ├── .env.example
│ │ ├── .vscode
│ │ │ ├── launch.json
│ │ │ └── settings.json
│ │ ├── assistant
│ │ │ ├── __init__.py
│ │ │ ├── assets
│ │ │ │ ├── card_content.md
│ │ │ │ └── icon.svg
│ │ │ ├── chat.py
│ │ │ ├── config.py
│ │ │ ├── helpers.py
│ │ │ ├── response
│ │ │ │ ├── __init__.py
│ │ │ │ ├── completion_handler.py
│ │ │ │ ├── completion_requestor.py
│ │ │ │ ├── local_tool
│ │ │ │ │ ├── __init__.py
│ │ │ │ │ ├── add_assistant_to_conversation.py
│ │ │ │ │ ├── list_assistant_services.py
│ │ │ │ │ └── model.py
│ │ │ │ ├── models.py
│ │ │ │ ├── prompt.py
│ │ │ │ ├── request_builder.py
│ │ │ │ ├── response.py
│ │ │ │ ├── step_handler.py
│ │ │ │ └── utils
│ │ │ │ ├── __init__.py
│ │ │ │ ├── formatting_utils.py
│ │ │ │ ├── message_utils.py
│ │ │ │ ├── openai_utils.py
│ │ │ │ └── tools.py
│ │ │ ├── text_includes
│ │ │ │ ├── guardrails_prompt.md
│ │ │ │ ├── guidance_prompt.md
│ │ │ │ ├── instruction_prompt.md
│ │ │ │ ├── navigator_assistant_info.md
│ │ │ │ └── semantic_workbench_features.md
│ │ │ └── whiteboard
│ │ │ ├── __init__.py
│ │ │ ├── _inspector.py
│ │ │ └── _whiteboard.py
│ │ ├── Makefile
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ └── uv.lock
│ ├── project-assistant
│ │ ├── .cspell
│ │ │ └── custom-dictionary-workspace.txt
│ │ ├── .env.example
│ │ ├── .vscode
│ │ │ ├── launch.json
│ │ │ └── settings.json
│ │ ├── assistant
│ │ │ ├── __init__.py
│ │ │ ├── agentic
│ │ │ │ ├── __init__.py
│ │ │ │ ├── act.py
│ │ │ │ ├── coordinator_next_action.py
│ │ │ │ ├── create_invitation.py
│ │ │ │ ├── detect_audience_and_takeaways.py
│ │ │ │ ├── detect_coordinator_actions.py
│ │ │ │ ├── detect_information_request_needs.py
│ │ │ │ ├── detect_knowledge_package_gaps.py
│ │ │ │ ├── focus.py
│ │ │ │ ├── respond.py
│ │ │ │ ├── team_welcome.py
│ │ │ │ └── update_digest.py
│ │ │ ├── assets
│ │ │ │ ├── icon-knowledge-transfer.svg
│ │ │ │ └── icon.svg
│ │ │ ├── assistant.py
│ │ │ ├── common.py
│ │ │ ├── config.py
│ │ │ ├── conversation_clients.py
│ │ │ ├── data.py
│ │ │ ├── domain
│ │ │ │ ├── __init__.py
│ │ │ │ ├── audience_manager.py
│ │ │ │ ├── conversation_preferences_manager.py
│ │ │ │ ├── information_request_manager.py
│ │ │ │ ├── knowledge_brief_manager.py
│ │ │ │ ├── knowledge_digest_manager.py
│ │ │ │ ├── learning_objectives_manager.py
│ │ │ │ ├── share_manager.py
│ │ │ │ ├── tasks_manager.py
│ │ │ │ └── transfer_manager.py
│ │ │ ├── errors.py
│ │ │ ├── files.py
│ │ │ ├── logging.py
│ │ │ ├── notifications.py
│ │ │ ├── prompt_utils.py
│ │ │ ├── storage.py
│ │ │ ├── string_utils.py
│ │ │ ├── text_includes
│ │ │ │ ├── actor_instructions.md
│ │ │ │ ├── assistant_info.md
│ │ │ │ ├── card_content.md
│ │ │ │ ├── coordinator_instructions copy.md
│ │ │ │ ├── coordinator_instructions.md
│ │ │ │ ├── create_invitation.md
│ │ │ │ ├── detect_audience.md
│ │ │ │ ├── detect_coordinator_actions.md
│ │ │ │ ├── detect_information_request_needs.md
│ │ │ │ ├── detect_knowledge_package_gaps.md
│ │ │ │ ├── focus.md
│ │ │ │ ├── knowledge_digest_instructions.txt
│ │ │ │ ├── team_instructions.txt
│ │ │ │ ├── to_do.md
│ │ │ │ ├── update_knowledge_brief.md
│ │ │ │ ├── update_knowledge_digest.md
│ │ │ │ └── welcome_message_generation.txt
│ │ │ ├── tools
│ │ │ │ ├── __init__.py
│ │ │ │ ├── base.py
│ │ │ │ ├── conversation_preferences.py
│ │ │ │ ├── information_requests.py
│ │ │ │ ├── learning_objectives.py
│ │ │ │ ├── learning_outcomes.py
│ │ │ │ ├── progress_tracking.py
│ │ │ │ ├── share_setup.py
│ │ │ │ ├── system_reminders.py
│ │ │ │ ├── tasks.py
│ │ │ │ └── todo.py
│ │ │ ├── ui_tabs
│ │ │ │ ├── __init__.py
│ │ │ │ ├── brief.py
│ │ │ │ ├── common.py
│ │ │ │ ├── debug.py
│ │ │ │ ├── learning.py
│ │ │ │ └── sharing.py
│ │ │ └── utils.py
│ │ ├── CLAUDE.md
│ │ ├── docs
│ │ │ ├── design
│ │ │ │ ├── actions.md
│ │ │ │ ├── control_options.md
│ │ │ │ ├── design.md
│ │ │ │ ├── inference.md
│ │ │ │ └── PXL_20250814_190140267.jpg
│ │ │ ├── DEV_GUIDE.md
│ │ │ ├── how-kta-works.md
│ │ │ ├── JTBD.md
│ │ │ ├── knowledge-transfer-goals.md
│ │ │ ├── learning_assistance.md
│ │ │ ├── notable_claude_conversations
│ │ │ │ ├── clarifying_quad_modal_design.md
│ │ │ │ ├── CLAUDE_PROMPTS.md
│ │ │ │ ├── transfer_state.md
│ │ │ │ └── trying_the_context_agent.md
│ │ │ └── opportunities-of-knowledge-transfer.md
│ │ ├── knowledge-transfer-assistant.code-workspace
│ │ ├── Makefile
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ ├── tests
│ │ │ ├── __init__.py
│ │ │ ├── test_artifact_loading.py
│ │ │ ├── test_inspector.py
│ │ │ ├── test_share_manager.py
│ │ │ ├── test_share_storage.py
│ │ │ └── test_team_mode.py
│ │ └── uv.lock
│ ├── prospector-assistant
│ │ ├── .env.example
│ │ ├── .vscode
│ │ │ ├── launch.json
│ │ │ └── settings.json
│ │ ├── assistant
│ │ │ ├── __init__.py
│ │ │ ├── agents
│ │ │ │ ├── artifact_agent.py
│ │ │ │ ├── document
│ │ │ │ │ ├── config.py
│ │ │ │ │ ├── gc_draft_content_feedback_config.py
│ │ │ │ │ ├── gc_draft_outline_feedback_config.py
│ │ │ │ │ ├── guided_conversation.py
│ │ │ │ │ └── state.py
│ │ │ │ └── document_agent.py
│ │ │ ├── artifact_creation_extension
│ │ │ │ ├── __init__.py
│ │ │ │ ├── _llm.py
│ │ │ │ ├── config.py
│ │ │ │ ├── document.py
│ │ │ │ ├── extension.py
│ │ │ │ ├── store.py
│ │ │ │ ├── test
│ │ │ │ │ ├── conftest.py
│ │ │ │ │ ├── evaluation.py
│ │ │ │ │ ├── test_completion_with_tools.py
│ │ │ │ │ └── test_extension.py
│ │ │ │ └── tools.py
│ │ │ ├── chat.py
│ │ │ ├── config.py
│ │ │ ├── form_fill_extension
│ │ │ │ ├── __init__.py
│ │ │ │ ├── config.py
│ │ │ │ ├── extension.py
│ │ │ │ ├── inspector.py
│ │ │ │ ├── state.py
│ │ │ │ └── steps
│ │ │ │ ├── __init__.py
│ │ │ │ ├── _guided_conversation.py
│ │ │ │ ├── _llm.py
│ │ │ │ ├── acquire_form_step.py
│ │ │ │ ├── extract_form_fields_step.py
│ │ │ │ ├── fill_form_step.py
│ │ │ │ └── types.py
│ │ │ ├── helpers.py
│ │ │ ├── legacy.py
│ │ │ └── text_includes
│ │ │ ├── artifact_agent_enabled.md
│ │ │ ├── guardrails_prompt.txt
│ │ │ ├── guided_conversation_agent_enabled.md
│ │ │ └── skills_agent_enabled.md
│ │ ├── assistant.code-workspace
│ │ ├── gc_learnings
│ │ │ ├── gc_learnings.md
│ │ │ └── images
│ │ │ ├── gc_conversation_plan_fcn.png
│ │ │ ├── gc_conversation_plan_template.png
│ │ │ ├── gc_execute_plan_callstack.png
│ │ │ ├── gc_functions.png
│ │ │ ├── gc_generate_plan_callstack.png
│ │ │ ├── gc_get_resource_instructions.png
│ │ │ ├── gc_get_termination_instructions.png
│ │ │ ├── gc_kernel_arguments.png
│ │ │ ├── gc_plan_calls.png
│ │ │ ├── gc_termination_instructions.png
│ │ │ ├── sk_get_chat_message_contents.png
│ │ │ ├── sk_inner_get_chat_message_contents.png
│ │ │ ├── sk_send_request_prep.png
│ │ │ └── sk_send_request.png
│ │ ├── Makefile
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ └── uv.lock
│ └── skill-assistant
│ ├── .env.example
│ ├── .vscode
│ │ ├── launch.json
│ │ └── settings.json
│ ├── assistant
│ │ ├── __init__.py
│ │ ├── config.py
│ │ ├── logging.py
│ │ ├── skill_assistant.py
│ │ ├── skill_engine_registry.py
│ │ ├── skill_event_mapper.py
│ │ ├── text_includes
│ │ │ └── guardrails_prompt.txt
│ │ └── workbench_helpers.py
│ ├── assistant.code-workspace
│ ├── Makefile
│ ├── pyproject.toml
│ ├── README.md
│ ├── tests
│ │ └── test_setup.py
│ └── uv.lock
├── CLAUDE.md
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── docs
│ ├── .vscode
│ │ └── settings.json
│ ├── ASSISTANT_CONFIG.md
│ ├── ASSISTANT_DEVELOPMENT_GUIDE.md
│ ├── CUSTOM_APP_REGISTRATION.md
│ ├── HOSTED_ASSISTANT_WITH_LOCAL_MCP_SERVERS.md
│ ├── images
│ │ ├── architecture-animation.gif
│ │ ├── configure_assistant.png
│ │ ├── conversation_canvas_open.png
│ │ ├── conversation_duplicate.png
│ │ ├── conversation_export.png
│ │ ├── conversation_share_dialog.png
│ │ ├── conversation_share_link.png
│ │ ├── dashboard_configured_view.png
│ │ ├── dashboard_view.png
│ │ ├── license_agreement.png
│ │ ├── message_bar.png
│ │ ├── message_inspection.png
│ │ ├── message_link.png
│ │ ├── new_prospector_assistant_dialog.png
│ │ ├── open_conversation_canvas.png
│ │ ├── prospector_example.png
│ │ ├── readme1.png
│ │ ├── readme2.png
│ │ ├── readme3.png
│ │ ├── rewind.png
│ │ ├── signin_page.png
│ │ └── splash_screen.png
│ ├── LOCAL_ASSISTANT_WITH_REMOTE_WORKBENCH.md
│ ├── SETUP_DEV_ENVIRONMENT.md
│ └── WORKBENCH_APP.md
├── examples
│ ├── dotnet
│ │ ├── .editorconfig
│ │ ├── dotnet-01-echo-bot
│ │ │ ├── appsettings.json
│ │ │ ├── dotnet-01-echo-bot.csproj
│ │ │ ├── MyAgent.cs
│ │ │ ├── MyAgentConfig.cs
│ │ │ ├── MyWorkbenchConnector.cs
│ │ │ ├── Program.cs
│ │ │ └── README.md
│ │ ├── dotnet-02-message-types-demo
│ │ │ ├── appsettings.json
│ │ │ ├── ConnectorExtensions.cs
│ │ │ ├── docs
│ │ │ │ ├── abc.png
│ │ │ │ ├── code.png
│ │ │ │ ├── config.png
│ │ │ │ ├── echo.png
│ │ │ │ ├── markdown.png
│ │ │ │ ├── mermaid.png
│ │ │ │ ├── reverse.png
│ │ │ │ └── safety-check.png
│ │ │ ├── dotnet-02-message-types-demo.csproj
│ │ │ ├── MyAgent.cs
│ │ │ ├── MyAgentConfig.cs
│ │ │ ├── MyWorkbenchConnector.cs
│ │ │ ├── Program.cs
│ │ │ └── README.md
│ │ └── dotnet-03-simple-chatbot
│ │ ├── appsettings.json
│ │ ├── ConnectorExtensions.cs
│ │ ├── dotnet-03-simple-chatbot.csproj
│ │ ├── MyAgent.cs
│ │ ├── MyAgentConfig.cs
│ │ ├── MyWorkbenchConnector.cs
│ │ ├── Program.cs
│ │ └── README.md
│ ├── Makefile
│ └── python
│ ├── python-01-echo-bot
│ │ ├── .env.example
│ │ ├── .vscode
│ │ │ ├── launch.json
│ │ │ └── settings.json
│ │ ├── assistant
│ │ │ ├── __init__.py
│ │ │ ├── chat.py
│ │ │ └── config.py
│ │ ├── assistant.code-workspace
│ │ ├── Makefile
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ └── uv.lock
│ ├── python-02-simple-chatbot
│ │ ├── .env.example
│ │ ├── .vscode
│ │ │ ├── launch.json
│ │ │ └── settings.json
│ │ ├── assistant
│ │ │ ├── __init__.py
│ │ │ ├── chat.py
│ │ │ ├── config.py
│ │ │ └── text_includes
│ │ │ └── guardrails_prompt.txt
│ │ ├── assistant.code-workspace
│ │ ├── Makefile
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ └── uv.lock
│ └── python-03-multimodel-chatbot
│ ├── .env.example
│ ├── .vscode
│ │ ├── launch.json
│ │ └── settings.json
│ ├── assistant
│ │ ├── __init__.py
│ │ ├── chat.py
│ │ ├── config.py
│ │ ├── model_adapters.py
│ │ └── text_includes
│ │ └── guardrails_prompt.txt
│ ├── assistant.code-workspace
│ ├── Makefile
│ ├── pyproject.toml
│ ├── README.md
│ └── uv.lock
├── KNOWN_ISSUES.md
├── libraries
│ ├── dotnet
│ │ ├── .editorconfig
│ │ ├── pack.sh
│ │ ├── README.md
│ │ ├── SemanticWorkbench.sln
│ │ ├── SemanticWorkbench.sln.DotSettings
│ │ └── WorkbenchConnector
│ │ ├── AgentBase.cs
│ │ ├── AgentConfig
│ │ │ ├── AgentConfigBase.cs
│ │ │ ├── AgentConfigPropertyAttribute.cs
│ │ │ └── ConfigUtils.cs
│ │ ├── Constants.cs
│ │ ├── IAgentBase.cs
│ │ ├── icon.png
│ │ ├── Models
│ │ │ ├── Command.cs
│ │ │ ├── Conversation.cs
│ │ │ ├── ConversationEvent.cs
│ │ │ ├── DebugInfo.cs
│ │ │ ├── Insight.cs
│ │ │ ├── Message.cs
│ │ │ ├── MessageMetadata.cs
│ │ │ ├── Participant.cs
│ │ │ ├── Sender.cs
│ │ │ └── ServiceInfo.cs
│ │ ├── Storage
│ │ │ ├── AgentInfo.cs
│ │ │ ├── AgentServiceStorage.cs
│ │ │ └── IAgentServiceStorage.cs
│ │ ├── StringLoggingExtensions.cs
│ │ ├── Webservice.cs
│ │ ├── WorkbenchConfig.cs
│ │ ├── WorkbenchConnector.cs
│ │ └── WorkbenchConnector.csproj
│ ├── Makefile
│ └── python
│ ├── anthropic-client
│ │ ├── .vscode
│ │ │ └── settings.json
│ │ ├── anthropic_client
│ │ │ ├── __init__.py
│ │ │ ├── client.py
│ │ │ ├── config.py
│ │ │ └── messages.py
│ │ ├── Makefile
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ └── uv.lock
│ ├── assistant-data-gen
│ │ ├── .vscode
│ │ │ ├── launch.json
│ │ │ └── settings.json
│ │ ├── assistant_data_gen
│ │ │ ├── __init__.py
│ │ │ ├── assistant_api.py
│ │ │ ├── config.py
│ │ │ ├── gce
│ │ │ │ ├── __init__.py
│ │ │ │ ├── gce_agent.py
│ │ │ │ └── prompts.py
│ │ │ └── pydantic_ai_utils.py
│ │ ├── configs
│ │ │ └── document_assistant_example_config.yaml
│ │ ├── Makefile
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ ├── scripts
│ │ │ ├── gce_simulation.py
│ │ │ └── generate_scenario.py
│ │ └── uv.lock
│ ├── assistant-drive
│ │ ├── .gitignore
│ │ ├── .vscode
│ │ │ ├── extensions.json
│ │ │ └── settings.json
│ │ ├── assistant_drive
│ │ │ ├── __init__.py
│ │ │ ├── drive.py
│ │ │ └── tests
│ │ │ └── test_basic.py
│ │ ├── Makefile
│ │ ├── pyproject.toml
│ │ ├── pytest.ini
│ │ ├── README.md
│ │ ├── usage.ipynb
│ │ └── uv.lock
│ ├── assistant-extensions
│ │ ├── .vscode
│ │ │ └── settings.json
│ │ ├── assistant_extensions
│ │ │ ├── __init__.py
│ │ │ ├── ai_clients
│ │ │ │ └── config.py
│ │ │ ├── artifacts
│ │ │ │ ├── __init__.py
│ │ │ │ ├── _artifacts.py
│ │ │ │ ├── _inspector.py
│ │ │ │ └── _model.py
│ │ │ ├── attachments
│ │ │ │ ├── __init__.py
│ │ │ │ ├── _attachments.py
│ │ │ │ ├── _convert.py
│ │ │ │ ├── _model.py
│ │ │ │ ├── _shared.py
│ │ │ │ └── _summarizer.py
│ │ │ ├── chat_context_toolkit
│ │ │ │ ├── __init__.py
│ │ │ │ ├── _config.py
│ │ │ │ ├── archive
│ │ │ │ │ ├── __init__.py
│ │ │ │ │ ├── _archive.py
│ │ │ │ │ └── _summarizer.py
│ │ │ │ ├── message_history
│ │ │ │ │ ├── __init__.py
│ │ │ │ │ ├── _history.py
│ │ │ │ │ └── _message.py
│ │ │ │ └── virtual_filesystem
│ │ │ │ ├── __init__.py
│ │ │ │ ├── _archive_file_source.py
│ │ │ │ └── _attachments_file_source.py
│ │ │ ├── dashboard_card
│ │ │ │ ├── __init__.py
│ │ │ │ └── _dashboard_card.py
│ │ │ ├── document_editor
│ │ │ │ ├── __init__.py
│ │ │ │ ├── _extension.py
│ │ │ │ ├── _inspector.py
│ │ │ │ └── _model.py
│ │ │ ├── mcp
│ │ │ │ ├── __init__.py
│ │ │ │ ├── _assistant_file_resource_handler.py
│ │ │ │ ├── _client_utils.py
│ │ │ │ ├── _devtunnel.py
│ │ │ │ ├── _model.py
│ │ │ │ ├── _openai_utils.py
│ │ │ │ ├── _sampling_handler.py
│ │ │ │ ├── _tool_utils.py
│ │ │ │ └── _workbench_file_resource_handler.py
│ │ │ ├── navigator
│ │ │ │ ├── __init__.py
│ │ │ │ └── _navigator.py
│ │ │ └── workflows
│ │ │ ├── __init__.py
│ │ │ ├── _model.py
│ │ │ ├── _workflows.py
│ │ │ └── runners
│ │ │ └── _user_proxy.py
│ │ ├── Makefile
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ ├── test
│ │ │ └── attachments
│ │ │ └── test_attachments.py
│ │ └── uv.lock
│ ├── chat-context-toolkit
│ │ ├── .claude
│ │ │ └── settings.local.json
│ │ ├── .env.sample
│ │ ├── .vscode
│ │ │ └── settings.json
│ │ ├── assets
│ │ │ ├── archive_v1.png
│ │ │ ├── history_v1.png
│ │ │ └── vfs_v1.png
│ │ ├── chat_context_toolkit
│ │ │ ├── __init__.py
│ │ │ ├── archive
│ │ │ │ ├── __init__.py
│ │ │ │ ├── _archive_reader.py
│ │ │ │ ├── _archive_task_queue.py
│ │ │ │ ├── _state.py
│ │ │ │ ├── _types.py
│ │ │ │ └── summarization
│ │ │ │ ├── __init__.py
│ │ │ │ └── _summarizer.py
│ │ │ ├── history
│ │ │ │ ├── __init__.py
│ │ │ │ ├── _budget.py
│ │ │ │ ├── _decorators.py
│ │ │ │ ├── _history.py
│ │ │ │ ├── _prioritize.py
│ │ │ │ ├── _types.py
│ │ │ │ └── tool_abbreviations
│ │ │ │ ├── __init__.py
│ │ │ │ └── _tool_abbreviations.py
│ │ │ └── virtual_filesystem
│ │ │ ├── __init__.py
│ │ │ ├── _types.py
│ │ │ ├── _virtual_filesystem.py
│ │ │ ├── README.md
│ │ │ └── tools
│ │ │ ├── __init__.py
│ │ │ ├── _ls_tool.py
│ │ │ ├── _tools.py
│ │ │ └── _view_tool.py
│ │ ├── CLAUDE.md
│ │ ├── Makefile
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ ├── test
│ │ │ ├── archive
│ │ │ │ └── test_archive_reader.py
│ │ │ ├── history
│ │ │ │ ├── test_abbreviate_messages.py
│ │ │ │ ├── test_history.py
│ │ │ │ ├── test_pair_and_order_tool_messages.py
│ │ │ │ ├── test_prioritize.py
│ │ │ │ └── test_truncate_messages.py
│ │ │ └── virtual_filesystem
│ │ │ ├── test_virtual_filesystem.py
│ │ │ └── tools
│ │ │ ├── test_ls_tool.py
│ │ │ ├── test_tools.py
│ │ │ └── test_view_tool.py
│ │ └── uv.lock
│ ├── content-safety
│ │ ├── .vscode
│ │ │ └── settings.json
│ │ ├── content_safety
│ │ │ ├── __init__.py
│ │ │ ├── evaluators
│ │ │ │ ├── __init__.py
│ │ │ │ ├── azure_content_safety
│ │ │ │ │ ├── __init__.py
│ │ │ │ │ ├── config.py
│ │ │ │ │ └── evaluator.py
│ │ │ │ ├── config.py
│ │ │ │ ├── evaluator.py
│ │ │ │ └── openai_moderations
│ │ │ │ ├── __init__.py
│ │ │ │ ├── config.py
│ │ │ │ └── evaluator.py
│ │ │ └── README.md
│ │ ├── Makefile
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ └── uv.lock
│ ├── events
│ │ ├── .vscode
│ │ │ └── settings.json
│ │ ├── events
│ │ │ ├── __init__.py
│ │ │ └── events.py
│ │ ├── Makefile
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ └── uv.lock
│ ├── guided-conversation
│ │ ├── .vscode
│ │ │ └── settings.json
│ │ ├── guided_conversation
│ │ │ ├── __init__.py
│ │ │ ├── functions
│ │ │ │ ├── __init__.py
│ │ │ │ ├── conversation_plan.py
│ │ │ │ ├── execution.py
│ │ │ │ └── final_update_plan.py
│ │ │ ├── guided_conversation_agent.py
│ │ │ ├── plugins
│ │ │ │ ├── __init__.py
│ │ │ │ ├── agenda.py
│ │ │ │ └── artifact.py
│ │ │ └── utils
│ │ │ ├── __init__.py
│ │ │ ├── base_model_llm.py
│ │ │ ├── conversation_helpers.py
│ │ │ ├── openai_tool_calling.py
│ │ │ ├── plugin_helpers.py
│ │ │ └── resources.py
│ │ ├── Makefile
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ └── uv.lock
│ ├── llm-client
│ │ ├── .vscode
│ │ │ └── settings.json
│ │ ├── llm_client
│ │ │ ├── __init__.py
│ │ │ └── model.py
│ │ ├── Makefile
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ └── uv.lock
│ ├── Makefile
│ ├── mcp-extensions
│ │ ├── .vscode
│ │ │ └── settings.json
│ │ ├── Makefile
│ │ ├── mcp_extensions
│ │ │ ├── __init__.py
│ │ │ ├── _client_session.py
│ │ │ ├── _model.py
│ │ │ ├── _sampling.py
│ │ │ ├── _server_extensions.py
│ │ │ ├── _tool_utils.py
│ │ │ ├── llm
│ │ │ │ ├── __init__.py
│ │ │ │ ├── chat_completion.py
│ │ │ │ ├── helpers.py
│ │ │ │ ├── llm_types.py
│ │ │ │ ├── mcp_chat_completion.py
│ │ │ │ └── openai_chat_completion.py
│ │ │ └── server
│ │ │ ├── __init__.py
│ │ │ └── storage.py
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ ├── tests
│ │ │ └── test_tool_utils.py
│ │ └── uv.lock
│ ├── mcp-tunnel
│ │ ├── .vscode
│ │ │ └── settings.json
│ │ ├── Makefile
│ │ ├── mcp_tunnel
│ │ │ ├── __init__.py
│ │ │ ├── _devtunnel.py
│ │ │ ├── _dir.py
│ │ │ └── _main.py
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ └── uv.lock
│ ├── openai-client
│ │ ├── .vscode
│ │ │ └── settings.json
│ │ ├── Makefile
│ │ ├── openai_client
│ │ │ ├── __init__.py
│ │ │ ├── chat_driver
│ │ │ │ ├── __init__.py
│ │ │ │ ├── chat_driver.ipynb
│ │ │ │ ├── chat_driver.py
│ │ │ │ ├── message_history_providers
│ │ │ │ │ ├── __init__.py
│ │ │ │ │ ├── in_memory_message_history_provider.py
│ │ │ │ │ ├── local_message_history_provider.py
│ │ │ │ │ ├── message_history_provider.py
│ │ │ │ │ └── tests
│ │ │ │ │ └── formatted_instructions_test.py
│ │ │ │ └── README.md
│ │ │ ├── client.py
│ │ │ ├── completion.py
│ │ │ ├── config.py
│ │ │ ├── errors.py
│ │ │ ├── logging.py
│ │ │ ├── messages.py
│ │ │ ├── tokens.py
│ │ │ └── tools.py
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ ├── tests
│ │ │ ├── test_command_parsing.py
│ │ │ ├── test_formatted_messages.py
│ │ │ ├── test_messages.py
│ │ │ └── test_tokens.py
│ │ └── uv.lock
│ ├── semantic-workbench-api-model
│ │ ├── .vscode
│ │ │ └── settings.json
│ │ ├── Makefile
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ ├── semantic_workbench_api_model
│ │ │ ├── __init__.py
│ │ │ ├── assistant_model.py
│ │ │ ├── assistant_service_client.py
│ │ │ ├── workbench_model.py
│ │ │ └── workbench_service_client.py
│ │ └── uv.lock
│ ├── semantic-workbench-assistant
│ │ ├── .vscode
│ │ │ ├── launch.json
│ │ │ └── settings.json
│ │ ├── Makefile
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ ├── semantic_workbench_assistant
│ │ │ ├── __init__.py
│ │ │ ├── assistant_app
│ │ │ │ ├── __init__.py
│ │ │ │ ├── assistant.py
│ │ │ │ ├── config.py
│ │ │ │ ├── content_safety.py
│ │ │ │ ├── context.py
│ │ │ │ ├── error.py
│ │ │ │ ├── export_import.py
│ │ │ │ ├── protocol.py
│ │ │ │ └── service.py
│ │ │ ├── assistant_service.py
│ │ │ ├── auth.py
│ │ │ ├── canonical.py
│ │ │ ├── command.py
│ │ │ ├── config.py
│ │ │ ├── logging_config.py
│ │ │ ├── settings.py
│ │ │ ├── start.py
│ │ │ └── storage.py
│ │ ├── tests
│ │ │ ├── conftest.py
│ │ │ ├── test_assistant_app.py
│ │ │ ├── test_canonical.py
│ │ │ ├── test_config.py
│ │ │ └── test_storage.py
│ │ └── uv.lock
│ └── skills
│ ├── .vscode
│ │ └── settings.json
│ ├── Makefile
│ ├── README.md
│ └── skill-library
│ ├── .vscode
│ │ └── settings.json
│ ├── docs
│ │ └── vs-recipe-tool.md
│ ├── Makefile
│ ├── pyproject.toml
│ ├── README.md
│ ├── skill_library
│ │ ├── __init__.py
│ │ ├── chat_driver_helpers.py
│ │ ├── cli
│ │ │ ├── azure_openai.py
│ │ │ ├── conversation_history.py
│ │ │ ├── README.md
│ │ │ ├── run_routine.py
│ │ │ ├── settings.py
│ │ │ └── skill_logger.py
│ │ ├── engine.py
│ │ ├── llm_info.txt
│ │ ├── logging.py
│ │ ├── README.md
│ │ ├── routine_stack.py
│ │ ├── skill.py
│ │ ├── skills
│ │ │ ├── common
│ │ │ │ ├── __init__.py
│ │ │ │ ├── common_skill.py
│ │ │ │ └── routines
│ │ │ │ ├── bing_search.py
│ │ │ │ ├── consolidate.py
│ │ │ │ ├── echo.py
│ │ │ │ ├── gather_context.py
│ │ │ │ ├── get_content_from_url.py
│ │ │ │ ├── gpt_complete.py
│ │ │ │ ├── select_user_intent.py
│ │ │ │ └── summarize.py
│ │ │ ├── eval
│ │ │ │ ├── __init__.py
│ │ │ │ ├── eval_skill.py
│ │ │ │ └── routines
│ │ │ │ └── eval.py
│ │ │ ├── fabric
│ │ │ │ ├── __init__.py
│ │ │ │ ├── fabric_skill.py
│ │ │ │ ├── patterns
│ │ │ │ │ ├── agility_story
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── ai
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── analyze_answers
│ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── analyze_candidates
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── analyze_cfp_submission
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── analyze_claims
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── analyze_comments
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── analyze_debate
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── analyze_email_headers
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── analyze_incident
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── analyze_interviewer_techniques
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── analyze_logs
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── analyze_malware
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── analyze_military_strategy
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── analyze_mistakes
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── analyze_paper
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── analyze_patent
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── analyze_personality
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── analyze_presentation
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── analyze_product_feedback
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── analyze_proposition
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── analyze_prose
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── analyze_prose_json
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── analyze_prose_pinker
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── analyze_risk
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── analyze_sales_call
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── analyze_spiritual_text
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── analyze_tech_impact
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── analyze_threat_report
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── analyze_threat_report_cmds
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── analyze_threat_report_trends
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── answer_interview_question
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── ask_secure_by_design_questions
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── ask_uncle_duke
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── capture_thinkers_work
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── check_agreement
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── clean_text
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── coding_master
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── compare_and_contrast
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── convert_to_markdown
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_5_sentence_summary
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_academic_paper
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_ai_jobs_analysis
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_aphorisms
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── create_art_prompt
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_better_frame
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── create_coding_project
│ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_command
│ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── create_cyber_summary
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_design_document
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_diy
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_formal_email
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_git_diff_commit
│ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_graph_from_input
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_hormozi_offer
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_idea_compass
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_investigation_visualization
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_keynote
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_logo
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── create_markmap_visualization
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_mermaid_visualization
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_mermaid_visualization_for_github
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_micro_summary
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_network_threat_landscape
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── create_newsletter_entry
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── create_npc
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── create_pattern
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_prd
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_prediction_block
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_quiz
│ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_reading_plan
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_recursive_outline
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_report_finding
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── create_rpg_summary
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_security_update
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── create_show_intro
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_sigma_rules
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_story_explanation
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_stride_threat_model
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_summary
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_tags
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_threat_scenarios
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_ttrc_graph
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_ttrc_narrative
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_upgrade_pack
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_user_story
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── create_video_chapters
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── create_visualization
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── dialog_with_socrates
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── enrich_blog_post
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── explain_code
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── explain_docs
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── explain_math
│ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── explain_project
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── explain_terms
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── export_data_as_csv
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_algorithm_update_recommendations
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── extract_article_wisdom
│ │ │ │ │ │ ├── dmiessler
│ │ │ │ │ │ │ └── extract_wisdom-1.0.0
│ │ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ │ └── user.md
│ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── extract_book_ideas
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_book_recommendations
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_business_ideas
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_controversial_ideas
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_core_message
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_ctf_writeup
│ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_domains
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_extraordinary_claims
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_ideas
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_insights
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_insights_dm
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_instructions
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_jokes
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_latest_video
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_main_idea
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_most_redeeming_thing
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_patterns
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_poc
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── extract_predictions
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_primary_problem
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_primary_solution
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_product_features
│ │ │ │ │ │ ├── dmiessler
│ │ │ │ │ │ │ └── extract_wisdom-1.0.0
│ │ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ │ └── user.md
│ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_questions
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_recipe
│ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_recommendations
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── extract_references
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── extract_skills
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_song_meaning
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_sponsors
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_videoid
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── extract_wisdom
│ │ │ │ │ │ ├── dmiessler
│ │ │ │ │ │ │ └── extract_wisdom-1.0.0
│ │ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ │ └── user.md
│ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_wisdom_agents
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_wisdom_dm
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── extract_wisdom_nometa
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── find_hidden_message
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── find_logical_fallacies
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── get_wow_per_minute
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── get_youtube_rss
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── humanize
│ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── identify_dsrp_distinctions
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── identify_dsrp_perspectives
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── identify_dsrp_relationships
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── identify_dsrp_systems
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── identify_job_stories
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── improve_academic_writing
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── improve_prompt
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── improve_report_finding
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── improve_writing
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── judge_output
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── label_and_rate
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── loaded
│ │ │ │ │ ├── md_callout
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── official_pattern_template
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── pattern_explanations.md
│ │ │ │ │ ├── prepare_7s_strategy
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── provide_guidance
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── rate_ai_response
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── rate_ai_result
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── rate_content
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── rate_value
│ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── raw_query
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── raycast
│ │ │ │ │ │ ├── capture_thinkers_work
│ │ │ │ │ │ ├── create_story_explanation
│ │ │ │ │ │ ├── extract_primary_problem
│ │ │ │ │ │ ├── extract_wisdom
│ │ │ │ │ │ └── yt
│ │ │ │ │ ├── recommend_artists
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── recommend_pipeline_upgrades
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── recommend_talkpanel_topics
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── refine_design_document
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── review_design
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── sanitize_broken_html_to_markdown
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── show_fabric_options_markmap
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── solve_with_cot
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── stringify
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── suggest_pattern
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── summarize
│ │ │ │ │ │ ├── dmiessler
│ │ │ │ │ │ │ └── summarize
│ │ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ │ └── user.md
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── summarize_debate
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── summarize_git_changes
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── summarize_git_diff
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── summarize_lecture
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── summarize_legislation
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── summarize_meeting
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── summarize_micro
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── summarize_newsletter
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── summarize_paper
│ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── summarize_prompt
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── summarize_pull-requests
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── summarize_rpg_session
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── t_analyze_challenge_handling
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── t_check_metrics
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── t_create_h3_career
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── t_create_opening_sentences
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── t_describe_life_outlook
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── t_extract_intro_sentences
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── t_extract_panel_topics
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── t_find_blindspots
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── t_find_negative_thinking
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── t_find_neglected_goals
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── t_give_encouragement
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── t_red_team_thinking
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── t_threat_model_plans
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── t_visualize_mission_goals_projects
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── t_year_in_review
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── to_flashcards
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── transcribe_minutes
│ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── translate
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── tweet
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── write_essay
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── write_hackerone_report
│ │ │ │ │ │ ├── README.md
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── write_latex
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── write_micro_essay
│ │ │ │ │ │ └── system.md
│ │ │ │ │ ├── write_nuclei_template_rule
│ │ │ │ │ │ ├── system.md
│ │ │ │ │ │ └── user.md
│ │ │ │ │ ├── write_pull-request
│ │ │ │ │ │ └── system.md
│ │ │ │ │ └── write_semgrep_rule
│ │ │ │ │ ├── system.md
│ │ │ │ │ └── user.md
│ │ │ │ └── routines
│ │ │ │ ├── list.py
│ │ │ │ ├── run.py
│ │ │ │ └── show.py
│ │ │ ├── guided_conversation
│ │ │ │ ├── __init__.py
│ │ │ │ ├── agenda.py
│ │ │ │ ├── artifact_helpers.py
│ │ │ │ ├── chat_completions
│ │ │ │ │ ├── fix_agenda_error.py
│ │ │ │ │ ├── fix_artifact_error.py
│ │ │ │ │ ├── generate_agenda.py
│ │ │ │ │ ├── generate_artifact_updates.py
│ │ │ │ │ ├── generate_final_artifact.py
│ │ │ │ │ └── generate_message.py
│ │ │ │ ├── conversation_guides
│ │ │ │ │ ├── __init__.py
│ │ │ │ │ ├── acrostic_poem.py
│ │ │ │ │ ├── er_triage.py
│ │ │ │ │ ├── interview.py
│ │ │ │ │ └── patient_intake.py
│ │ │ │ ├── guide.py
│ │ │ │ ├── guided_conversation_skill.py
│ │ │ │ ├── logging.py
│ │ │ │ ├── message.py
│ │ │ │ ├── resources.py
│ │ │ │ ├── routines
│ │ │ │ │ └── guided_conversation.py
│ │ │ │ └── tests
│ │ │ │ ├── conftest.py
│ │ │ │ ├── test_artifact_helpers.py
│ │ │ │ ├── test_generate_agenda.py
│ │ │ │ ├── test_generate_artifact_updates.py
│ │ │ │ ├── test_generate_final_artifact.py
│ │ │ │ └── test_resource.py
│ │ │ ├── meta
│ │ │ │ ├── __init__.py
│ │ │ │ ├── meta_skill.py
│ │ │ │ ├── README.md
│ │ │ │ └── routines
│ │ │ │ └── generate_routine.py
│ │ │ ├── posix
│ │ │ │ ├── __init__.py
│ │ │ │ ├── posix_skill.py
│ │ │ │ ├── routines
│ │ │ │ │ ├── append_file.py
│ │ │ │ │ ├── cd.py
│ │ │ │ │ ├── ls.py
│ │ │ │ │ ├── make_home_dir.py
│ │ │ │ │ ├── mkdir.py
│ │ │ │ │ ├── mv.py
│ │ │ │ │ ├── pwd.py
│ │ │ │ │ ├── read_file.py
│ │ │ │ │ ├── rm.py
│ │ │ │ │ ├── touch.py
│ │ │ │ │ └── write_file.py
│ │ │ │ └── sandbox_shell.py
│ │ │ ├── README.md
│ │ │ ├── research
│ │ │ │ ├── __init__.py
│ │ │ │ ├── README.md
│ │ │ │ ├── research_skill.py
│ │ │ │ └── routines
│ │ │ │ ├── answer_question_about_content.py
│ │ │ │ ├── evaluate_answer.py
│ │ │ │ ├── generate_research_plan.py
│ │ │ │ ├── generate_search_query.py
│ │ │ │ ├── update_research_plan.py
│ │ │ │ ├── web_research.py
│ │ │ │ └── web_search.py
│ │ │ ├── research2
│ │ │ │ ├── __init__.py
│ │ │ │ ├── README.md
│ │ │ │ ├── research_skill.py
│ │ │ │ └── routines
│ │ │ │ ├── facts.py
│ │ │ │ ├── make_final_report.py
│ │ │ │ ├── research.py
│ │ │ │ ├── search_plan.py
│ │ │ │ ├── search.py
│ │ │ │ └── visit_pages.py
│ │ │ └── web_research
│ │ │ ├── __init__.py
│ │ │ ├── README.md
│ │ │ ├── research_skill.py
│ │ │ └── routines
│ │ │ ├── facts.py
│ │ │ ├── make_final_report.py
│ │ │ ├── research.py
│ │ │ ├── search_plan.py
│ │ │ ├── search.py
│ │ │ └── visit_pages.py
│ │ ├── tests
│ │ │ ├── test_common_skill.py
│ │ │ ├── test_integration.py
│ │ │ ├── test_routine_stack.py
│ │ │ ├── tst_skill
│ │ │ │ ├── __init__.py
│ │ │ │ └── routines
│ │ │ │ ├── __init__.py
│ │ │ │ └── a_routine.py
│ │ │ └── utilities
│ │ │ ├── test_find_template_vars.py
│ │ │ ├── test_make_arg_set.py
│ │ │ ├── test_paramspec.py
│ │ │ ├── test_parse_command_string.py
│ │ │ └── test_to_string.py
│ │ ├── types.py
│ │ ├── usage.py
│ │ └── utilities.py
│ └── uv.lock
├── LICENSE
├── Makefile
├── mcp-servers
│ ├── ai-assist-content
│ │ ├── .vscode
│ │ │ └── settings.json
│ │ ├── mcp-example-brave-search.md
│ │ ├── mcp-fastmcp-typescript-README.md
│ │ ├── mcp-llms-full.txt
│ │ ├── mcp-metadata-tips.md
│ │ ├── mcp-python-sdk-README.md
│ │ ├── mcp-typescript-sdk-README.md
│ │ ├── pydanticai-documentation.md
│ │ ├── pydanticai-example-question-graph.md
│ │ ├── pydanticai-example-weather.md
│ │ ├── pydanticai-tutorial.md
│ │ └── README.md
│ ├── Makefile
│ ├── mcp-server-bing-search
│ │ ├── .env.example
│ │ ├── .gitignore
│ │ ├── .vscode
│ │ │ ├── launch.json
│ │ │ └── settings.json
│ │ ├── Makefile
│ │ ├── mcp_server_bing_search
│ │ │ ├── __init__.py
│ │ │ ├── config.py
│ │ │ ├── prompts
│ │ │ │ ├── __init__.py
│ │ │ │ ├── clean_website.py
│ │ │ │ └── filter_links.py
│ │ │ ├── server.py
│ │ │ ├── start.py
│ │ │ ├── tools.py
│ │ │ ├── types.py
│ │ │ ├── utils.py
│ │ │ └── web
│ │ │ ├── __init__.py
│ │ │ ├── get_content.py
│ │ │ ├── llm_processing.py
│ │ │ ├── process_website.py
│ │ │ └── search_bing.py
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ ├── tests
│ │ │ └── test_tools.py
│ │ └── uv.lock
│ ├── mcp-server-bundle
│ │ ├── .vscode
│ │ │ ├── launch.json
│ │ │ └── settings.json
│ │ ├── Makefile
│ │ ├── mcp_server_bundle
│ │ │ ├── __init__.py
│ │ │ └── main.py
│ │ ├── pyinstaller.spec
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ └── uv.lock
│ ├── mcp-server-filesystem
│ │ ├── .env.example
│ │ ├── .github
│ │ │ └── workflows
│ │ │ └── ci.yml
│ │ ├── .gitignore
│ │ ├── .vscode
│ │ │ ├── launch.json
│ │ │ └── settings.json
│ │ ├── Makefile
│ │ ├── mcp_server_filesystem
│ │ │ ├── __init__.py
│ │ │ ├── config.py
│ │ │ ├── server.py
│ │ │ └── start.py
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ ├── tests
│ │ │ └── test_filesystem.py
│ │ └── uv.lock
│ ├── mcp-server-filesystem-edit
│ │ ├── .env.example
│ │ ├── .gitignore
│ │ ├── .vscode
│ │ │ ├── launch.json
│ │ │ └── settings.json
│ │ ├── data
│ │ │ ├── attachments
│ │ │ │ ├── Daily Game Ideas.txt
│ │ │ │ ├── Frontend Framework Proposal.txt
│ │ │ │ ├── ReDoodle.txt
│ │ │ │ └── Research Template.tex
│ │ │ ├── test_cases.yaml
│ │ │ └── transcripts
│ │ │ ├── transcript_research_simple.md
│ │ │ ├── transcript_Startup_Idea_1_202503031513.md
│ │ │ ├── transcript_Startup_Idea_2_202503031659.md
│ │ │ └── transcript_Web_Frontends_202502281551.md
│ │ ├── Makefile
│ │ ├── mcp_server_filesystem_edit
│ │ │ ├── __init__.py
│ │ │ ├── app_handling
│ │ │ │ ├── __init__.py
│ │ │ │ ├── excel.py
│ │ │ │ ├── miktex.py
│ │ │ │ ├── office_common.py
│ │ │ │ ├── powerpoint.py
│ │ │ │ └── word.py
│ │ │ ├── config.py
│ │ │ ├── evals
│ │ │ │ ├── __init__.py
│ │ │ │ ├── common.py
│ │ │ │ ├── run_comments.py
│ │ │ │ ├── run_edit.py
│ │ │ │ └── run_ppt_edit.py
│ │ │ ├── prompts
│ │ │ │ ├── __init__.py
│ │ │ │ ├── add_comments.py
│ │ │ │ ├── analyze_comments.py
│ │ │ │ ├── latex_edit.py
│ │ │ │ ├── markdown_draft.py
│ │ │ │ ├── markdown_edit.py
│ │ │ │ └── powerpoint_edit.py
│ │ │ ├── server.py
│ │ │ ├── start.py
│ │ │ ├── tools
│ │ │ │ ├── __init__.py
│ │ │ │ ├── add_comments.py
│ │ │ │ ├── edit_adapters
│ │ │ │ │ ├── __init__.py
│ │ │ │ │ ├── common.py
│ │ │ │ │ ├── latex.py
│ │ │ │ │ └── markdown.py
│ │ │ │ ├── edit.py
│ │ │ │ └── helpers.py
│ │ │ └── types.py
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ ├── tests
│ │ │ ├── app_handling
│ │ │ │ ├── test_excel.py
│ │ │ │ ├── test_miktext.py
│ │ │ │ ├── test_office_common.py
│ │ │ │ ├── test_powerpoint.py
│ │ │ │ └── test_word.py
│ │ │ ├── conftest.py
│ │ │ └── tools
│ │ │ └── edit_adapters
│ │ │ ├── test_latex.py
│ │ │ └── test_markdown.py
│ │ └── uv.lock
│ ├── mcp-server-fusion
│ │ ├── .gitignore
│ │ ├── .vscode
│ │ │ ├── launch.json
│ │ │ └── settings.json
│ │ ├── AddInIcon.svg
│ │ ├── config.py
│ │ ├── FusionMCPServerAddIn.manifest
│ │ ├── FusionMCPServerAddIn.py
│ │ ├── mcp_server_fusion
│ │ │ ├── __init__.py
│ │ │ ├── fusion_mcp_server.py
│ │ │ ├── fusion_utils
│ │ │ │ ├── __init__.py
│ │ │ │ ├── event_utils.py
│ │ │ │ ├── general_utils.py
│ │ │ │ └── tool_utils.py
│ │ │ ├── mcp_tools
│ │ │ │ ├── __init__.py
│ │ │ │ ├── fusion_3d_operation.py
│ │ │ │ ├── fusion_geometry.py
│ │ │ │ ├── fusion_pattern.py
│ │ │ │ └── fusion_sketch.py
│ │ │ └── vendor
│ │ │ └── README.md
│ │ ├── README.md
│ │ └── requirements.txt
│ ├── mcp-server-giphy
│ │ ├── .env.example
│ │ ├── .gitignore
│ │ ├── .vscode
│ │ │ ├── launch.json
│ │ │ └── settings.json
│ │ ├── Makefile
│ │ ├── mcp_server
│ │ │ ├── __init__.py
│ │ │ ├── config.py
│ │ │ ├── giphy_search.py
│ │ │ ├── sampling.py
│ │ │ ├── server.py
│ │ │ ├── start.py
│ │ │ └── utils.py
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ └── uv.lock
│ ├── mcp-server-memory-user-bio
│ │ ├── .env.example
│ │ ├── .gitignore
│ │ ├── .vscode
│ │ │ ├── launch.json
│ │ │ └── settings.json
│ │ ├── Makefile
│ │ ├── mcp_server_memory_user_bio
│ │ │ ├── __init__.py
│ │ │ ├── config.py
│ │ │ ├── server.py
│ │ │ └── start.py
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ └── uv.lock
│ ├── mcp-server-memory-whiteboard
│ │ ├── .env.example
│ │ ├── .gitignore
│ │ ├── .vscode
│ │ │ ├── launch.json
│ │ │ └── settings.json
│ │ ├── Makefile
│ │ ├── mcp_server_memory_whiteboard
│ │ │ ├── __init__.py
│ │ │ ├── config.py
│ │ │ ├── server.py
│ │ │ └── start.py
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ └── uv.lock
│ ├── mcp-server-office
│ │ ├── .env.example
│ │ ├── .vscode
│ │ │ ├── launch.json
│ │ │ └── settings.json
│ │ ├── build.sh
│ │ ├── data
│ │ │ ├── attachments
│ │ │ │ ├── Daily Game Ideas.txt
│ │ │ │ ├── Frontend Framework Proposal.txt
│ │ │ │ └── ReDoodle.txt
│ │ │ └── word
│ │ │ ├── test_cases.yaml
│ │ │ └── transcripts
│ │ │ ├── transcript_Startup_Idea_1_202503031513.md
│ │ │ ├── transcript_Startup_Idea_2_202503031659.md
│ │ │ └── transcript_Web_Frontends_202502281551.md
│ │ ├── Makefile
│ │ ├── mcp_server
│ │ │ ├── __init__.py
│ │ │ ├── app_interaction
│ │ │ │ ├── __init__.py
│ │ │ │ ├── excel_editor.py
│ │ │ │ ├── powerpoint_editor.py
│ │ │ │ └── word_editor.py
│ │ │ ├── config.py
│ │ │ ├── constants.py
│ │ │ ├── evals
│ │ │ │ ├── __init__.py
│ │ │ │ ├── common.py
│ │ │ │ ├── run_comment_analysis.py
│ │ │ │ ├── run_feedback.py
│ │ │ │ └── run_markdown_edit.py
│ │ │ ├── helpers.py
│ │ │ ├── markdown_edit
│ │ │ │ ├── __init__.py
│ │ │ │ ├── comment_analysis.py
│ │ │ │ ├── feedback_step.py
│ │ │ │ ├── markdown_edit.py
│ │ │ │ └── utils.py
│ │ │ ├── prompts
│ │ │ │ ├── __init__.py
│ │ │ │ ├── comment_analysis.py
│ │ │ │ ├── feedback.py
│ │ │ │ ├── markdown_draft.py
│ │ │ │ └── markdown_edit.py
│ │ │ ├── server.py
│ │ │ ├── start.py
│ │ │ └── types.py
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ ├── tests
│ │ │ └── test_word_editor.py
│ │ └── uv.lock
│ ├── mcp-server-open-deep-research
│ │ ├── .env.example
│ │ ├── .gitignore
│ │ ├── .vscode
│ │ │ ├── launch.json
│ │ │ └── settings.json
│ │ ├── Makefile
│ │ ├── mcp_server
│ │ │ ├── __init__.py
│ │ │ ├── config.py
│ │ │ ├── libs
│ │ │ │ └── open_deep_research
│ │ │ │ ├── cookies.py
│ │ │ │ ├── mdconvert.py
│ │ │ │ ├── run_agents.py
│ │ │ │ ├── text_inspector_tool.py
│ │ │ │ ├── text_web_browser.py
│ │ │ │ └── visual_qa.py
│ │ │ ├── open_deep_research.py
│ │ │ ├── server.py
│ │ │ └── start.py
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ └── uv.lock
│ ├── mcp-server-open-deep-research-clone
│ │ ├── .env.example
│ │ ├── .gitignore
│ │ ├── .vscode
│ │ │ ├── launch.json
│ │ │ └── settings.json
│ │ ├── Makefile
│ │ ├── mcp_server_open_deep_research_clone
│ │ │ ├── __init__.py
│ │ │ ├── azure_openai.py
│ │ │ ├── config.py
│ │ │ ├── logging.py
│ │ │ ├── sampling.py
│ │ │ ├── server.py
│ │ │ ├── start.py
│ │ │ ├── utils.py
│ │ │ └── web_research.py
│ │ ├── pyproject.toml
│ │ ├── README.md
│ │ ├── test
│ │ │ └── test_open_deep_research_clone.py
│ │ └── uv.lock
│ ├── mcp-server-template
│ │ ├── .taplo.toml
│ │ ├── .vscode
│ │ │ └── settings.json
│ │ ├── copier.yml
│ │ ├── README.md
│ │ └── template
│ │ └── {{ project_slug }}
│ │ ├── .env.example.jinja
│ │ ├── .gitignore
│ │ ├── .vscode
│ │ │ ├── launch.json.jinja
│ │ │ └── settings.json
│ │ ├── {{ module_name }}
│ │ │ ├── __init__.py
│ │ │ ├── config.py.jinja
│ │ │ ├── server.py.jinja
│ │ │ └── start.py.jinja
│ │ ├── Makefile.jinja
│ │ ├── pyproject.toml.jinja
│ │ └── README.md.jinja
│ ├── mcp-server-vscode
│ │ ├── .eslintrc.cjs
│ │ ├── .gitignore
│ │ ├── .npmrc
│ │ ├── .vscode
│ │ │ ├── extensions.json
│ │ │ ├── launch.json
│ │ │ ├── settings.json
│ │ │ └── tasks.json
│ │ ├── .vscode-test.mjs
│ │ ├── .vscodeignore
│ │ ├── ASSISTANT_BOOTSTRAP.md
│ │ ├── eslint.config.mjs
│ │ ├── images
│ │ │ └── icon.png
│ │ ├── LICENSE
│ │ ├── Makefile
│ │ ├── out
│ │ │ ├── extension.d.ts
│ │ │ ├── extension.js
│ │ │ ├── test
│ │ │ │ ├── extension.test.d.ts
│ │ │ │ └── extension.test.js
│ │ │ ├── tools
│ │ │ │ ├── code_checker.d.ts
│ │ │ │ ├── code_checker.js
│ │ │ │ ├── debug_tools.d.ts
│ │ │ │ ├── debug_tools.js
│ │ │ │ ├── focus_editor.d.ts
│ │ │ │ ├── focus_editor.js
│ │ │ │ ├── search_symbol.d.ts
│ │ │ │ └── search_symbol.js
│ │ │ └── utils
│ │ │ ├── port.d.ts
│ │ │ └── port.js
│ │ ├── package.json
│ │ ├── pnpm-lock.yaml
│ │ ├── prettier.config.cjs
│ │ ├── README.md
│ │ ├── src
│ │ │ ├── extension.d.ts
│ │ │ ├── extension.ts
│ │ │ ├── test
│ │ │ │ ├── extension.test.d.ts
│ │ │ │ └── extension.test.ts
│ │ │ ├── tools
│ │ │ │ ├── code_checker.d.ts
│ │ │ │ ├── code_checker.ts
│ │ │ │ ├── debug_tools.d.ts
│ │ │ │ ├── debug_tools.ts
│ │ │ │ ├── focus_editor.d.ts
│ │ │ │ ├── focus_editor.ts
│ │ │ │ ├── search_symbol.d.ts
│ │ │ │ └── search_symbol.ts
│ │ │ └── utils
│ │ │ ├── port.d.ts
│ │ │ └── port.ts
│ │ ├── tsconfig.json
│ │ ├── tsconfig.tsbuildinfo
│ │ ├── vsc-extension-quickstart.md
│ │ └── webpack.config.js
│ └── mcp-server-web-research
│ ├── .env.example
│ ├── .gitignore
│ ├── .vscode
│ │ ├── launch.json
│ │ └── settings.json
│ ├── Makefile
│ ├── mcp_server_web_research
│ │ ├── __init__.py
│ │ ├── azure_openai.py
│ │ ├── config.py
│ │ ├── logging.py
│ │ ├── sampling.py
│ │ ├── server.py
│ │ ├── start.py
│ │ ├── utils.py
│ │ └── web_research.py
│ ├── pyproject.toml
│ ├── README.md
│ ├── test
│ │ └── test_web_research.py
│ └── uv.lock
├── README.md
├── RESPONSIBLE_AI_FAQ.md
├── ruff.toml
├── SECURITY.md
├── semantic-workbench.code-workspace
├── SUPPORT.md
├── tools
│ ├── build_ai_context_files.py
│ ├── collect_files.py
│ ├── docker
│ │ ├── azure_website_sshd.conf
│ │ ├── docker-entrypoint.sh
│ │ ├── Dockerfile.assistant
│ │ └── Dockerfile.mcp-server
│ ├── makefiles
│ │ ├── docker-assistant.mk
│ │ ├── docker-mcp-server.mk
│ │ ├── docker.mk
│ │ ├── python.mk
│ │ ├── recursive.mk
│ │ └── shell.mk
│ ├── reset-service-data.ps1
│ ├── reset-service-data.sh
│ ├── run-app.ps1
│ ├── run-app.sh
│ ├── run-canonical-agent.ps1
│ ├── run-canonical-agent.sh
│ ├── run-dotnet-examples-with-aspire.sh
│ ├── run-python-example1.sh
│ ├── run-python-example2.ps1
│ ├── run-python-example2.sh
│ ├── run-service.ps1
│ ├── run-service.sh
│ ├── run-workbench-chatbot.ps1
│ └── run-workbench-chatbot.sh
├── workbench-app
│ ├── .dockerignore
│ ├── .env.example
│ ├── .eslintrc.cjs
│ ├── .gitignore
│ ├── .vscode
│ │ ├── launch.json
│ │ └── settings.json
│ ├── docker-entrypoint.sh
│ ├── Dockerfile
│ ├── docs
│ │ ├── APP_DEV_GUIDE.md
│ │ ├── MESSAGE_METADATA.md
│ │ ├── MESSAGE_TYPES.md
│ │ ├── README.md
│ │ └── STATE_INSPECTORS.md
│ ├── index.html
│ ├── Makefile
│ ├── nginx.conf
│ ├── package.json
│ ├── pnpm-lock.yaml
│ ├── prettier.config.cjs
│ ├── public
│ │ └── assets
│ │ ├── background-1-upscaled.jpg
│ │ ├── background-1-upscaled.png
│ │ ├── background-1.jpg
│ │ ├── background-1.png
│ │ ├── background-2.jpg
│ │ ├── background-2.png
│ │ ├── experimental-feature.jpg
│ │ ├── favicon.svg
│ │ ├── workflow-designer-1.jpg
│ │ ├── workflow-designer-outlets.jpg
│ │ ├── workflow-designer-states.jpg
│ │ └── workflow-designer-transitions.jpg
│ ├── README.md
│ ├── run.sh
│ ├── src
│ │ ├── components
│ │ │ ├── App
│ │ │ │ ├── AppFooter.tsx
│ │ │ │ ├── AppHeader.tsx
│ │ │ │ ├── AppMenu.tsx
│ │ │ │ ├── AppView.tsx
│ │ │ │ ├── CodeLabel.tsx
│ │ │ │ ├── CommandButton.tsx
│ │ │ │ ├── ConfirmLeave.tsx
│ │ │ │ ├── ContentExport.tsx
│ │ │ │ ├── ContentImport.tsx
│ │ │ │ ├── CopyButton.tsx
│ │ │ │ ├── DialogControl.tsx
│ │ │ │ ├── DynamicIframe.tsx
│ │ │ │ ├── ErrorListFromAppState.tsx
│ │ │ │ ├── ErrorMessageBar.tsx
│ │ │ │ ├── ExperimentalNotice.tsx
│ │ │ │ ├── FormWidgets
│ │ │ │ │ ├── BaseModelEditorWidget.tsx
│ │ │ │ │ ├── CustomizedArrayFieldTemplate.tsx
│ │ │ │ │ ├── CustomizedFieldTemplate.tsx
│ │ │ │ │ ├── CustomizedObjectFieldTemplate.tsx
│ │ │ │ │ └── InspectableWidget.tsx
│ │ │ │ ├── LabelWithDescription.tsx
│ │ │ │ ├── Loading.tsx
│ │ │ │ ├── MenuItemControl.tsx
│ │ │ │ ├── MiniControl.tsx
│ │ │ │ ├── MyAssistantServiceRegistrations.tsx
│ │ │ │ ├── MyItemsManager.tsx
│ │ │ │ ├── OverflowMenu.tsx
│ │ │ │ ├── PresenceMotionList.tsx
│ │ │ │ ├── ProfileSettings.tsx
│ │ │ │ └── TooltipWrapper.tsx
│ │ │ ├── Assistants
│ │ │ │ ├── ApplyConfigButton.tsx
│ │ │ │ ├── AssistantAdd.tsx
│ │ │ │ ├── AssistantConfigExportButton.tsx
│ │ │ │ ├── AssistantConfigImportButton.tsx
│ │ │ │ ├── AssistantConfiguration.tsx
│ │ │ │ ├── AssistantConfigure.tsx
│ │ │ │ ├── AssistantCreate.tsx
│ │ │ │ ├── AssistantDelete.tsx
│ │ │ │ ├── AssistantDuplicate.tsx
│ │ │ │ ├── AssistantExport.tsx
│ │ │ │ ├── AssistantImport.tsx
│ │ │ │ ├── AssistantRemove.tsx
│ │ │ │ ├── AssistantRename.tsx
│ │ │ │ ├── AssistantServiceInfo.tsx
│ │ │ │ ├── AssistantServiceMetadata.tsx
│ │ │ │ └── MyAssistants.tsx
│ │ │ ├── AssistantServiceRegistrations
│ │ │ │ ├── AssistantServiceRegistrationApiKey.tsx
│ │ │ │ ├── AssistantServiceRegistrationApiKeyReset.tsx
│ │ │ │ ├── AssistantServiceRegistrationCreate.tsx
│ │ │ │ └── AssistantServiceRegistrationRemove.tsx
│ │ │ ├── Conversations
│ │ │ │ ├── Canvas
│ │ │ │ │ ├── AssistantCanvas.tsx
│ │ │ │ │ ├── AssistantCanvasList.tsx
│ │ │ │ │ ├── AssistantInspector.tsx
│ │ │ │ │ ├── AssistantInspectorList.tsx
│ │ │ │ │ └── ConversationCanvas.tsx
│ │ │ │ ├── ChatInputPlugins
│ │ │ │ │ ├── ClearEditorPlugin.tsx
│ │ │ │ │ ├── LexicalMenu.ts
│ │ │ │ │ ├── ParticipantMentionsPlugin.tsx
│ │ │ │ │ ├── TypeaheadMenuPlugin.css
│ │ │ │ │ └── TypeaheadMenuPlugin.tsx
│ │ │ │ ├── ContentRenderers
│ │ │ │ │ ├── CodeContentRenderer.tsx
│ │ │ │ │ ├── ContentListRenderer.tsx
│ │ │ │ │ ├── ContentRenderer.tsx
│ │ │ │ │ ├── DiffRenderer.tsx
│ │ │ │ │ ├── HtmlContentRenderer.tsx
│ │ │ │ │ ├── JsonSchemaContentRenderer.tsx
│ │ │ │ │ ├── MarkdownContentRenderer.tsx
│ │ │ │ │ ├── MarkdownEditorRenderer.tsx
│ │ │ │ │ ├── MermaidContentRenderer.tsx
│ │ │ │ │ ├── MusicABCContentRenderer.css
│ │ │ │ │ └── MusicABCContentRenderer.tsx
│ │ │ │ ├── ContextWindow.tsx
│ │ │ │ ├── ConversationCreate.tsx
│ │ │ │ ├── ConversationDuplicate.tsx
│ │ │ │ ├── ConversationExport.tsx
│ │ │ │ ├── ConversationFileIcon.tsx
│ │ │ │ ├── ConversationRemove.tsx
│ │ │ │ ├── ConversationRename.tsx
│ │ │ │ ├── ConversationShare.tsx
│ │ │ │ ├── ConversationShareCreate.tsx
│ │ │ │ ├── ConversationShareList.tsx
│ │ │ │ ├── ConversationShareView.tsx
│ │ │ │ ├── ConversationsImport.tsx
│ │ │ │ ├── ConversationTranscript.tsx
│ │ │ │ ├── DebugInspector.tsx
│ │ │ │ ├── FileItem.tsx
│ │ │ │ ├── FileList.tsx
│ │ │ │ ├── InputAttachmentList.tsx
│ │ │ │ ├── InputOptionsControl.tsx
│ │ │ │ ├── InteractHistory.tsx
│ │ │ │ ├── InteractInput.tsx
│ │ │ │ ├── Message
│ │ │ │ │ ├── AttachmentSection.tsx
│ │ │ │ │ ├── ContentRenderer.tsx
│ │ │ │ │ ├── ContentSafetyNotice.tsx
│ │ │ │ │ ├── InteractMessage.tsx
│ │ │ │ │ ├── MessageActions.tsx
│ │ │ │ │ ├── MessageBase.tsx
│ │ │ │ │ ├── MessageBody.tsx
│ │ │ │ │ ├── MessageContent.tsx
│ │ │ │ │ ├── MessageFooter.tsx
│ │ │ │ │ ├── MessageHeader.tsx
│ │ │ │ │ ├── NotificationAccordion.tsx
│ │ │ │ │ └── ToolResultMessage.tsx
│ │ │ │ ├── MessageDelete.tsx
│ │ │ │ ├── MessageLink.tsx
│ │ │ │ ├── MyConversations.tsx
│ │ │ │ ├── MyShares.tsx
│ │ │ │ ├── ParticipantAvatar.tsx
│ │ │ │ ├── ParticipantAvatarGroup.tsx
│ │ │ │ ├── ParticipantItem.tsx
│ │ │ │ ├── ParticipantList.tsx
│ │ │ │ ├── ParticipantStatus.tsx
│ │ │ │ ├── RewindConversation.tsx
│ │ │ │ ├── ShareRemove.tsx
│ │ │ │ ├── SpeechButton.tsx
│ │ │ │ └── ToolCalls.tsx
│ │ │ └── FrontDoor
│ │ │ ├── Chat
│ │ │ │ ├── AssistantDrawer.tsx
│ │ │ │ ├── CanvasDrawer.tsx
│ │ │ │ ├── Chat.tsx
│ │ │ │ ├── ChatCanvas.tsx
│ │ │ │ ├── ChatControls.tsx
│ │ │ │ └── ConversationDrawer.tsx
│ │ │ ├── Controls
│ │ │ │ ├── AssistantCard.tsx
│ │ │ │ ├── AssistantSelector.tsx
│ │ │ │ ├── AssistantServiceSelector.tsx
│ │ │ │ ├── ConversationItem.tsx
│ │ │ │ ├── ConversationList.tsx
│ │ │ │ ├── ConversationListOptions.tsx
│ │ │ │ ├── NewConversationButton.tsx
│ │ │ │ ├── NewConversationForm.tsx
│ │ │ │ └── SiteMenuButton.tsx
│ │ │ ├── GlobalContent.tsx
│ │ │ └── MainContent.tsx
│ │ ├── Constants.ts
│ │ ├── global.d.ts
│ │ ├── index.css
│ │ ├── libs
│ │ │ ├── AppStorage.ts
│ │ │ ├── AuthHelper.ts
│ │ │ ├── EventSubscriptionManager.ts
│ │ │ ├── Theme.ts
│ │ │ ├── useAssistantCapabilities.ts
│ │ │ ├── useChatCanvasController.ts
│ │ │ ├── useConversationEvents.ts
│ │ │ ├── useConversationUtility.ts
│ │ │ ├── useCreateConversation.ts
│ │ │ ├── useDebugComponentLifecycle.ts
│ │ │ ├── useDragAndDrop.ts
│ │ │ ├── useEnvironment.ts
│ │ │ ├── useExportUtility.ts
│ │ │ ├── useHistoryUtility.ts
│ │ │ ├── useKeySequence.ts
│ │ │ ├── useMediaQuery.ts
│ │ │ ├── useMicrosoftGraph.ts
│ │ │ ├── useNotify.tsx
│ │ │ ├── useParticipantUtility.tsx
│ │ │ ├── useSiteUtility.ts
│ │ │ ├── useWorkbenchEventSource.ts
│ │ │ ├── useWorkbenchService.ts
│ │ │ └── Utility.ts
│ │ ├── main.tsx
│ │ ├── models
│ │ │ ├── Assistant.ts
│ │ │ ├── AssistantCapability.ts
│ │ │ ├── AssistantServiceInfo.ts
│ │ │ ├── AssistantServiceRegistration.ts
│ │ │ ├── Config.ts
│ │ │ ├── Conversation.ts
│ │ │ ├── ConversationFile.ts
│ │ │ ├── ConversationMessage.ts
│ │ │ ├── ConversationMessageDebug.ts
│ │ │ ├── ConversationParticipant.ts
│ │ │ ├── ConversationShare.ts
│ │ │ ├── ConversationShareRedemption.ts
│ │ │ ├── ConversationState.ts
│ │ │ ├── ConversationStateDescription.ts
│ │ │ ├── ServiceEnvironment.ts
│ │ │ └── User.ts
│ │ ├── redux
│ │ │ ├── app
│ │ │ │ ├── hooks.ts
│ │ │ │ ├── rtkQueryErrorLogger.ts
│ │ │ │ └── store.ts
│ │ │ └── features
│ │ │ ├── app
│ │ │ │ ├── appSlice.ts
│ │ │ │ └── AppState.ts
│ │ │ ├── chatCanvas
│ │ │ │ ├── chatCanvasSlice.ts
│ │ │ │ └── ChatCanvasState.ts
│ │ │ ├── localUser
│ │ │ │ ├── localUserSlice.ts
│ │ │ │ └── LocalUserState.ts
│ │ │ └── settings
│ │ │ ├── settingsSlice.ts
│ │ │ └── SettingsState.ts
│ │ ├── Root.tsx
│ │ ├── routes
│ │ │ ├── AcceptTerms.tsx
│ │ │ ├── AssistantEditor.tsx
│ │ │ ├── AssistantServiceRegistrationEditor.tsx
│ │ │ ├── Dashboard.tsx
│ │ │ ├── ErrorPage.tsx
│ │ │ ├── FrontDoor.tsx
│ │ │ ├── Login.tsx
│ │ │ ├── Settings.tsx
│ │ │ ├── ShareRedeem.tsx
│ │ │ └── Shares.tsx
│ │ ├── services
│ │ │ └── workbench
│ │ │ ├── assistant.ts
│ │ │ ├── assistantService.ts
│ │ │ ├── conversation.ts
│ │ │ ├── file.ts
│ │ │ ├── index.ts
│ │ │ ├── participant.ts
│ │ │ ├── share.ts
│ │ │ ├── state.ts
│ │ │ └── workbench.ts
│ │ └── vite-env.d.ts
│ ├── tools
│ │ └── filtered-ts-prune.cjs
│ ├── tsconfig.json
│ └── vite.config.ts
└── workbench-service
├── .env.example
├── .vscode
│ ├── extensions.json
│ ├── launch.json
│ └── settings.json
├── alembic.ini
├── devdb
│ ├── docker-compose.yaml
│ └── postgresql-init.sh
├── Dockerfile
├── Makefile
├── migrations
│ ├── env.py
│ ├── README
│ ├── script.py.mako
│ └── versions
│ ├── 2024_09_19_000000_69dcda481c14_init.py
│ ├── 2024_09_19_190029_dffb1d7e219a_file_version_filename.py
│ ├── 2024_09_20_204130_b29524775484_share.py
│ ├── 2024_10_30_231536_039bec8edc33_index_message_type.py
│ ├── 2024_11_04_204029_5149c7fb5a32_conversationmessagedebug.py
│ ├── 2024_11_05_015124_245baf258e11_double_check_debugs.py
│ ├── 2024_11_25_191056_a106de176394_drop_workflow.py
│ ├── 2025_03_19_140136_aaaf792d4d72_set_user_title_set.py
│ ├── 2025_03_21_153250_3763629295ad_add_assistant_template_id.py
│ ├── 2025_05_19_163613_b2f86e981885_delete_context_transfer_assistants.py
│ └── 2025_06_18_174328_503c739152f3_delete_knowlege_transfer_assistants.py
├── pyproject.toml
├── README.md
├── semantic_workbench_service
│ ├── __init__.py
│ ├── api.py
│ ├── assistant_api_key.py
│ ├── auth.py
│ ├── azure_speech.py
│ ├── config.py
│ ├── controller
│ │ ├── __init__.py
│ │ ├── assistant_service_client_pool.py
│ │ ├── assistant_service_registration.py
│ │ ├── assistant.py
│ │ ├── conversation_share.py
│ │ ├── conversation.py
│ │ ├── convert.py
│ │ ├── exceptions.py
│ │ ├── export_import.py
│ │ ├── file.py
│ │ ├── participant.py
│ │ └── user.py
│ ├── db.py
│ ├── event.py
│ ├── files.py
│ ├── logging_config.py
│ ├── middleware.py
│ ├── query.py
│ ├── service_user_principals.py
│ ├── service.py
│ └── start.py
├── tests
│ ├── __init__.py
│ ├── conftest.py
│ ├── docker-compose.yaml
│ ├── test_assistant_api_key.py
│ ├── test_files.py
│ ├── test_integration.py
│ ├── test_middleware.py
│ ├── test_migrations.py
│ ├── test_workbench_service.py
│ └── types.py
└── uv.lock
```
# Files
--------------------------------------------------------------------------------
/workbench-app/src/models/ConversationShare.ts:
--------------------------------------------------------------------------------
```typescript
1 | // Copyright (c) Microsoft. All rights reserved.
2 |
3 | import { User } from './User';
4 |
5 | export interface ConversationShare {
6 | id: string;
7 | createdByUser: User;
8 | label: string;
9 | conversationId: string;
10 | conversationTitle: string;
11 | conversationPermission: 'read' | 'read_write';
12 | isRedeemable: boolean;
13 | createdDateTime: string;
14 | metadata: {
15 | [key: string]: any;
16 | };
17 | }
18 |
```
--------------------------------------------------------------------------------
/assistants/explorer-assistant/assistant/helpers.py:
--------------------------------------------------------------------------------
```python
1 | import pathlib
2 |
3 |
4 | # helper for loading an include from a text file
5 | def load_text_include(filename) -> str:
6 | # get directory relative to this module
7 | directory = pathlib.Path(__file__).parent
8 |
9 | # get the file path for the prompt file
10 | file_path = directory / "text_includes" / filename
11 |
12 | # read the prompt from the file
13 | return file_path.read_text()
14 |
15 |
16 | __all__ = ["load_text_include"]
17 |
```
--------------------------------------------------------------------------------
/assistants/prospector-assistant/assistant/helpers.py:
--------------------------------------------------------------------------------
```python
1 | import pathlib
2 |
3 |
4 | # helper for loading an include from a text file
5 | def load_text_include(filename) -> str:
6 | # get directory relative to this module
7 | directory = pathlib.Path(__file__).parent
8 |
9 | # get the file path for the prompt file
10 | file_path = directory / "text_includes" / filename
11 |
12 | # read the prompt from the file
13 | return file_path.read_text()
14 |
15 |
16 | __all__ = ["load_text_include"]
17 |
```
--------------------------------------------------------------------------------
/mcp-servers/mcp-server-giphy/.vscode/launch.json:
--------------------------------------------------------------------------------
```json
1 | {
2 | "version": "0.2.0",
3 | "configurations": [
4 | {
5 | "type": "debugpy",
6 | "request": "launch",
7 | "name": "mcp-servers: mcp-server-giphy",
8 | "cwd": "${workspaceFolder}",
9 | "module": "mcp_server.start",
10 | "args": ["--transport", "sse", "--port", "6040"],
11 | "consoleTitle": "mcp-server-giphy",
12 | "justMyCode": false // Set to false to debug external libraries
13 | }
14 | ]
15 | }
16 |
```
--------------------------------------------------------------------------------
/tools/docker/azure_website_sshd.conf:
--------------------------------------------------------------------------------
```
1 | Port 2222
2 | ListenAddress 0.0.0.0
3 | LoginGraceTime 180
4 | X11Forwarding yes
5 | Ciphers aes128-cbc,3des-cbc,aes256-cbc,aes128-ctr,aes192-ctr,aes256-ctr
6 | MACs hmac-sha1,hmac-sha1-96
7 | StrictModes yes
8 | SyslogFacility DAEMON
9 | PasswordAuthentication yes
10 | PermitEmptyPasswords no
11 | PermitRootLogin yes
12 | Subsystem sftp internal-sftp
13 |
```
--------------------------------------------------------------------------------
/workbench-service/devdb/docker-compose.yaml:
--------------------------------------------------------------------------------
```yaml
1 | volumes:
2 | postgres-data:
3 | services:
4 | postgres:
5 | image: postgres:15
6 | environment:
7 | POSTGRES_USER: ${USER:-${USERNAME:-postgres}}
8 | POSTGRES_HOST_AUTH_METHOD: trust
9 | volumes:
10 | - postgres-data:/var/lib/postgresql/data # save data between restarts
11 | - ./postgresql-init.sh:/docker-entrypoint-initdb.d/1-postgresql-init.sh:delegated
12 | ports:
13 | - 5432:${POSTGRESQL_PORT:-5432}
14 |
```
--------------------------------------------------------------------------------
/mcp-servers/mcp-server-office/.vscode/launch.json:
--------------------------------------------------------------------------------
```json
1 | {
2 | "version": "0.2.0",
3 | "configurations": [
4 | {
5 | "type": "debugpy",
6 | "request": "launch",
7 | "name": "mcp-servers: mcp-server-office",
8 | "cwd": "${workspaceFolder}",
9 | "module": "mcp_server.start",
10 | "args": ["--transport", "sse", "--port", "25566"],
11 | "consoleTitle": "mcp-server-office"
12 | // "justMyCode": false // Set to false to debug external libraries
13 | }
14 | ]
15 | }
16 |
```
--------------------------------------------------------------------------------
/libraries/python/semantic-workbench-assistant/tests/conftest.py:
--------------------------------------------------------------------------------
```python
1 | import tempfile
2 | from typing import Iterator
3 |
4 | import pytest
5 | from semantic_workbench_assistant import settings, storage
6 |
7 |
8 | @pytest.fixture
9 | def storage_settings(request: pytest.FixtureRequest) -> Iterator[storage.FileStorageSettings]:
10 | storage_settings = settings.storage.model_copy()
11 |
12 | with tempfile.TemporaryDirectory() as temp_dir:
13 | storage_settings.root = temp_dir
14 | yield storage_settings
15 |
```
--------------------------------------------------------------------------------
/libraries/python/assistant-extensions/assistant_extensions/navigator/_navigator.py:
--------------------------------------------------------------------------------
```python
1 | from typing import Any
2 |
3 | navigator_metadata_key = "_assistant_navigator"
4 |
5 |
6 | def metadata_for_assistant_navigator(metadata_for_navigator: dict[str, str]) -> dict[str, Any]:
7 | return {
8 | navigator_metadata_key: metadata_for_navigator,
9 | }
10 |
11 |
12 | def extract_metadata_for_assistant_navigator(assistant_metadata: dict[str, Any]) -> dict[str, str] | None:
13 | return assistant_metadata.get(navigator_metadata_key)
14 |
```
--------------------------------------------------------------------------------
/assistants/codespace-assistant/assistant/helpers.py:
--------------------------------------------------------------------------------
```python
1 | import pathlib
2 |
3 |
4 | # helper for loading an include from a text file
5 | def load_text_include(filename) -> str:
6 | # get directory relative to this module
7 | directory = pathlib.Path(__file__).parent
8 |
9 | # get the file path for the prompt file
10 | file_path = directory / "text_includes" / filename
11 |
12 | # read the prompt from the file
13 | return file_path.read_text(encoding="utf-8")
14 |
15 |
16 | __all__ = ["load_text_include"]
17 |
```
--------------------------------------------------------------------------------
/assistants/navigator-assistant/assistant/helpers.py:
--------------------------------------------------------------------------------
```python
1 | import pathlib
2 |
3 |
4 | # helper for loading an include from a text file
5 | def load_text_include(filename) -> str:
6 | # get directory relative to this module
7 | directory = pathlib.Path(__file__).parent
8 |
9 | # get the file path for the prompt file
10 | file_path = directory / "text_includes" / filename
11 |
12 | # read the prompt from the file
13 | return file_path.read_text(encoding="utf-8")
14 |
15 |
16 | __all__ = ["load_text_include"]
17 |
```
--------------------------------------------------------------------------------
/workbench-service/migrations/versions/2024_09_19_000000_69dcda481c14_init.py:
--------------------------------------------------------------------------------
```python
1 | """init
2 |
3 | Revision ID: 69dcda481c14
4 | Revises: None
5 | Create Date: 2024-09-24 18:26:06.987227
6 |
7 | """
8 |
9 | from typing import Sequence, Union
10 |
11 | # revision identifiers, used by Alembic.
12 | revision: str = "69dcda481c14"
13 | down_revision: Union[str, None] = None
14 | branch_labels: Union[str, Sequence[str], None] = None
15 | depends_on: Union[str, Sequence[str], None] = None
16 |
17 |
18 | def upgrade() -> None:
19 | pass
20 |
21 |
22 | def downgrade() -> None:
23 | pass
24 |
```
--------------------------------------------------------------------------------
/mcp-servers/mcp-server-bing-search/.vscode/launch.json:
--------------------------------------------------------------------------------
```json
1 | {
2 | "version": "0.2.0",
3 | "configurations": [
4 | {
5 | "type": "debugpy",
6 | "request": "launch",
7 | "name": "mcp-servers: mcp-server-bing-search",
8 | "cwd": "${workspaceFolder}",
9 | "module": "mcp_server_bing_search.start",
10 | "args": ["--transport", "sse", "--port", "6030"],
11 | "consoleTitle": "mcp-server-bing-search"
12 | // "justMyCode": false // Set to false to debug external libraries
13 | }
14 | ]
15 | }
16 |
```
--------------------------------------------------------------------------------
/workbench-app/src/models/ConversationParticipant.ts:
--------------------------------------------------------------------------------
```typescript
1 | // Copyright (c) Microsoft. All rights reserved.
2 |
3 | export interface ConversationParticipant {
4 | role: 'user' | 'assistant' | 'service';
5 | id: string;
6 | conversationId: string;
7 | name: string;
8 | image?: string;
9 | online?: boolean;
10 | status: string | null;
11 | statusTimestamp: string | null;
12 | conversationPermission: 'read' | 'read_write';
13 | active: boolean;
14 | metadata: {
15 | [key: string]: any;
16 | };
17 | }
18 |
```
--------------------------------------------------------------------------------
/mcp-servers/mcp-server-open-deep-research/.vscode/launch.json:
--------------------------------------------------------------------------------
```json
1 | {
2 | "version": "0.2.0",
3 | "configurations": [
4 | {
5 | "type": "debugpy",
6 | "request": "launch",
7 | "name": "mcp-servers: mcp-server-open-deep-research",
8 | "cwd": "${workspaceFolder}",
9 | "module": "mcp_server.start",
10 | "args": ["--transport", "sse", "--port", "6020"],
11 | "consoleTitle": "mcp-server-open-deep-research"
12 | // "justMyCode": false // Set to false to debug external libraries
13 | }
14 | ]
15 | }
16 |
```
--------------------------------------------------------------------------------
/mcp-servers/mcp-server-web-research/.vscode/launch.json:
--------------------------------------------------------------------------------
```json
1 | {
2 | "version": "0.2.0",
3 | "configurations": [
4 | {
5 | "type": "debugpy",
6 | "request": "launch",
7 | "name": "mcp-servers: mcp-server-web-research",
8 | "cwd": "${workspaceFolder}",
9 | "module": "mcp_server_web_research.start",
10 | "args": ["--transport", "sse", "--port", "6060"],
11 | "consoleTitle": "mcp-server-web-research"
12 | // "justMyCode": false // Set to false to debug external libraries
13 | }
14 | ]
15 | }
16 |
```
--------------------------------------------------------------------------------
/mcp-servers/mcp-server-office/mcp_server/config.py:
--------------------------------------------------------------------------------
```python
1 | # Copyright (c) Microsoft. All rights reserved.
2 |
3 | import os
4 |
5 | from pydantic_settings import BaseSettings
6 |
7 | log_level = os.environ.get("LOG_LEVEL", "INFO")
8 |
9 |
10 | def load_required_env_var(env_var_name: str) -> str:
11 | value = os.environ.get(env_var_name, "")
12 | if not value:
13 | raise ValueError(f"Missing required environment variable: {env_var_name}")
14 | return value
15 |
16 |
17 | class Settings(BaseSettings):
18 | log_level: str = log_level
19 |
```
--------------------------------------------------------------------------------
/libraries/python/openai-client/openai_client/chat_driver/message_history_providers/__init__.py:
--------------------------------------------------------------------------------
```python
1 | from .in_memory_message_history_provider import InMemoryMessageHistoryProvider
2 | from .local_message_history_provider import (
3 | LocalMessageHistoryProvider,
4 | LocalMessageHistoryProviderConfig,
5 | )
6 | from .message_history_provider import MessageHistoryProviderProtocol
7 |
8 | __all__ = [
9 | "LocalMessageHistoryProvider",
10 | "LocalMessageHistoryProviderConfig",
11 | "InMemoryMessageHistoryProvider",
12 | "MessageHistoryProviderProtocol",
13 | ]
14 |
```
--------------------------------------------------------------------------------
/workbench-app/tools/filtered-ts-prune.cjs:
--------------------------------------------------------------------------------
```
1 | const { exec } = require('child_process');
2 |
3 | exec('ts-prune', (error, stdout, stderr) => {
4 | if (error) {
5 | console.error(`Error: ${error.message}`);
6 | return;
7 | }
8 | if (stderr) {
9 | console.error(`Stderr: ${stderr}`);
10 | return;
11 | }
12 | const filteredOutput = stdout
13 | .split('\n')
14 | .filter((line) => !line.includes('used in module'))
15 | .join('\n');
16 | console.log(filteredOutput);
17 | });
18 |
```
--------------------------------------------------------------------------------
/libraries/python/skills/skill-library/skill_library/skills/common/routines/echo.py:
--------------------------------------------------------------------------------
```python
1 | """
2 | web research skill
3 | """
4 |
5 | from typing import Any
6 |
7 | from skill_library import AskUserFn, EmitFn, RunContext, RunRoutineFn
8 |
9 |
10 | async def main(
11 | context: RunContext,
12 | routine_state: dict[str, Any],
13 | emit: EmitFn,
14 | run: RunRoutineFn,
15 | ask_user: AskUserFn,
16 | ) -> str:
17 | await ask_user("What do you want to echo?")
18 | history = (await context.conversation_history()).messages
19 | message = history[-1].content
20 | return message
21 |
```
--------------------------------------------------------------------------------
/assistants/knowledge-transfer-assistant/assistant/ui_tabs/__init__.py:
--------------------------------------------------------------------------------
```python
1 | """
2 | Inspector modules for the Knowledge Transfer Assistant.
3 |
4 | This package contains the tabbed inspector implementations that provide
5 | different views of the knowledge transfer state in the workbench UI.
6 | """
7 |
8 | from .brief import BriefInspector
9 | from .learning import LearningInspector
10 | from .sharing import SharingInspector
11 | from .debug import DebugInspector
12 |
13 | __all__ = ["BriefInspector", "LearningInspector", "SharingInspector", "DebugInspector"]
14 |
```
--------------------------------------------------------------------------------
/mcp-servers/mcp-server-filesystem/mcp_server_filesystem/config.py:
--------------------------------------------------------------------------------
```python
1 | import os
2 | from typing import List
3 | from pydantic_settings import BaseSettings
4 |
5 | log_level = os.environ.get("LOG_LEVEL", "INFO")
6 |
7 |
8 | def load_required_env_var(env_var_name: str) -> str:
9 | value = os.environ.get(env_var_name, "")
10 | if not value:
11 | raise ValueError(f"Missing required environment variable: {env_var_name}")
12 | return value
13 |
14 |
15 | class Settings(BaseSettings):
16 | log_level: str = log_level
17 | allowed_directories: List[str] = []
18 |
```
--------------------------------------------------------------------------------
/mcp-servers/mcp-server-memory-whiteboard/.vscode/launch.json:
--------------------------------------------------------------------------------
```json
1 | {
2 | "version": "0.2.0",
3 | "configurations": [
4 | {
5 | "type": "debugpy",
6 | "request": "launch",
7 | "name": "mcp-servers: mcp-server-memory-whiteboard",
8 | "cwd": "${workspaceFolder}",
9 | "module": "mcp_server_memory_whiteboard.start",
10 | "args": ["--transport", "sse", "--port", "38733"],
11 | "consoleTitle": "mcp-server-memory-whiteboard"
12 | // "justMyCode": false // Set to false to debug external libraries
13 | }
14 | ]
15 | }
16 |
```
--------------------------------------------------------------------------------
/workbench-service/.vscode/extensions.json:
--------------------------------------------------------------------------------
```json
1 | {
2 | "recommendations": [
3 | "aaron-bond.better-comments",
4 | "charliermarsh.ruff",
5 | "dbaeumer.vscode-eslint",
6 | "epivision.vscode-file-header",
7 | "esbenp.prettier-vscode",
8 | "github.vscode-github-actions",
9 | "ms-azuretools.vscode-docker",
10 | "ms-python.debugpy",
11 | "ms-python.python",
12 | "ms-vscode.makefile-tools",
13 | "ms-vscode.vscode-node-azure-pack",
14 | "tamasfe.even-better-toml",
15 | "streetsidesoftware.code-spell-checker"
16 | ]
17 | }
18 |
```
--------------------------------------------------------------------------------
/assistants/codespace-assistant/assistant/assets/icon_context_transfer.svg:
--------------------------------------------------------------------------------
```
1 | <svg style="background-color:rgb(198,177,222)" width="30" height="30" viewBox="-5 -5 30 30" xmlns="http://www.w3.org/2000/svg">
2 | <path fill="rgb(36,36,36)" d="M12 5.5a2.5 2.5 0 1 1 .53 1.54L7.92 9.35a2.5 2.5 0 0 1 0 1.3l4.61 2.3a2.5 2.5 0 1 1-.45.9l-4.61-2.3a2.5 2.5 0 1 1 0-3.1l4.61-2.3A2.5 2.5 0 0 1 12 5.5ZM14.5 4a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3Zm0 9a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3ZM4 10a1.5 1.5 0 1 0 3 0 1.5 1.5 0 0 0-3 0Z"></path>
3 | </svg>
4 |
```
--------------------------------------------------------------------------------
/assistants/knowledge-transfer-assistant/assistant/assets/icon-knowledge-transfer.svg:
--------------------------------------------------------------------------------
```
1 | <svg style="background-color:rgb(198,177,222)" width="30" height="30" viewBox="-5 -5 30 30" xmlns="http://www.w3.org/2000/svg">
2 | <path fill="rgb(36,36,36)" d="M12 5.5a2.5 2.5 0 1 1 .53 1.54L7.92 9.35a2.5 2.5 0 0 1 0 1.3l4.61 2.3a2.5 2.5 0 1 1-.45.9l-4.61-2.3a2.5 2.5 0 1 1 0-3.1l4.61-2.3A2.5 2.5 0 0 1 12 5.5ZM14.5 4a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3Zm0 9a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3ZM4 10a1.5 1.5 0 1 0 3 0 1.5 1.5 0 0 0-3 0Z"></path>
3 | </svg>
4 |
```
--------------------------------------------------------------------------------
/assistants/project-assistant/assistant/assets/icon-knowledge-transfer.svg:
--------------------------------------------------------------------------------
```
1 | <svg style="background-color:rgb(198,177,222)" width="30" height="30" viewBox="-5 -5 30 30" xmlns="http://www.w3.org/2000/svg">
2 | <path fill="rgb(36,36,36)" d="M12 5.5a2.5 2.5 0 1 1 .53 1.54L7.92 9.35a2.5 2.5 0 0 1 0 1.3l4.61 2.3a2.5 2.5 0 1 1-.45.9l-4.61-2.3a2.5 2.5 0 1 1 0-3.1l4.61-2.3A2.5 2.5 0 0 1 12 5.5ZM14.5 4a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3Zm0 9a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3ZM4 10a1.5 1.5 0 1 0 3 0 1.5 1.5 0 0 0-3 0Z"></path>
3 | </svg>
4 |
```
--------------------------------------------------------------------------------
/libraries/dotnet/WorkbenchConnector/Models/MessageMetadata.cs:
--------------------------------------------------------------------------------
```csharp
1 | // Copyright (c) Microsoft. All rights reserved.
2 |
3 | using System.Text.Json.Serialization;
4 |
5 | // ReSharper disable once CheckNamespace
6 | namespace Microsoft.SemanticWorkbench.Connector;
7 |
8 | public class MessageMetadata
9 | {
10 | [JsonPropertyName("attribution")]
11 | public string Attribution { get; set; } = string.Empty;
12 |
13 | [JsonPropertyName("debug")]
14 | [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
15 | public object? Debug { get; set; } = null;
16 | }
17 |
```
--------------------------------------------------------------------------------
/libraries/python/skills/skill-library/skill_library/skills/fabric/patterns/create_aphorisms/system.md:
--------------------------------------------------------------------------------
```markdown
1 | # IDENTITY and PURPOSE
2 |
3 | You are an expert finder and printer of existing, known aphorisms.
4 |
5 | # Steps
6 |
7 | Take the input given and use it as the topic(s) to create a list of 20 aphorisms, from real people, and include the person who said each one at the end.
8 |
9 | # OUTPUT INSTRUCTIONS
10 |
11 | - Ensure they don't all start with the keywords given.
12 | - You only output human readable Markdown.
13 | - Do not output warnings or notes—just the requested sections.
14 |
15 | # INPUT:
16 |
17 | INPUT:
18 |
```
--------------------------------------------------------------------------------
/tools/run-canonical-agent.ps1:
--------------------------------------------------------------------------------
```
1 | #!/usr/bin/env pwsh
2 |
3 | # Exit on error
4 | $ErrorActionPreference = "Stop"
5 |
6 | # Determine the root directory of the script
7 | $scriptPath = $PSScriptRoot
8 | $root = Resolve-Path "$scriptPath\.."
9 |
10 | # Change directory to the root
11 | Set-Location $root
12 | # ================================================================
13 |
14 | # Change directory to workbench-service
15 | Set-Location "workbench-service"
16 |
17 | # Run the command
18 | uv run start-assistant semantic_workbench_assistant.canonical:app
19 |
```
--------------------------------------------------------------------------------
/assistants/knowledge-transfer-assistant/.claude/settings.local.json:
--------------------------------------------------------------------------------
```json
1 | {
2 | "permissions": {
3 | "allow": [
4 | "Bash(find:*)",
5 | "Bash(grep:*)",
6 | "Bash(rg:*)",
7 | "Bash(make:*)",
8 | "Bash(python:*)",
9 | "Bash(mkdir:*)",
10 | "Bash(mv:*)",
11 | "Bash(ls:*)",
12 | "Bash(cat:*)",
13 | "Bash(cp:*)",
14 | "Bash(git mv:*)",
15 | "Bash(make lint)",
16 | "Bash(make type-check)",
17 | "Bash(pytest:*)",
18 | "Bash(sed:*)",
19 | "Bash(uv:*)"
20 | ],
21 | "deny": []
22 | },
23 | "enableAllProjectMcpServers": false
24 | }
```
--------------------------------------------------------------------------------
/tools/run-python-example2.ps1:
--------------------------------------------------------------------------------
```
1 | #!/usr/bin/env pwsh
2 |
3 | # Exit on error
4 | $ErrorActionPreference = "Stop"
5 |
6 | # Determine the root directory of the script
7 | $scriptPath = $PSScriptRoot
8 | $root = Resolve-Path "$scriptPath\.."
9 |
10 | # Change directory to the root
11 | Set-Location $root
12 | # ================================================================
13 |
14 | # Change directory to examples/python/python-02-simple-chatbot
15 | Set-Location "examples/python/python-02-simple-chatbot"
16 |
17 | # Run the commands
18 | uv run start-assistant
19 |
```
--------------------------------------------------------------------------------
/libraries/python/openai-client/openai_client/chat_driver/__init__.py:
--------------------------------------------------------------------------------
```python
1 | from .chat_driver import (
2 | ChatDriver,
3 | ChatDriverConfig,
4 | )
5 | from .message_history_providers import (
6 | InMemoryMessageHistoryProvider,
7 | LocalMessageHistoryProvider,
8 | LocalMessageHistoryProviderConfig,
9 | MessageHistoryProviderProtocol,
10 | )
11 |
12 | __all__ = [
13 | "ChatDriver",
14 | "ChatDriverConfig",
15 | "InMemoryMessageHistoryProvider",
16 | "LocalMessageHistoryProvider",
17 | "LocalMessageHistoryProviderConfig",
18 | "MessageHistoryProviderProtocol",
19 | ]
20 |
```
--------------------------------------------------------------------------------
/assistants/codespace-assistant/assistant/assets/icon.svg:
--------------------------------------------------------------------------------
```
1 | <svg style="background-color:rgb(244,191,171)" width="30" height="30" viewBox="-5 -5 30 30" xmlns="http://www.w3.org/2000/svg">
2 | <path fill="rgb(36,36,36)" d="M12.97 3.68a.5.5 0 0 0-.94-.36l-5 13a.5.5 0 1 0 .94.36l5-13ZM5.83 6.12c.2.18.23.5.05.7L3.16 10l2.72 3.17a.5.5 0 0 1-.76.66l-3-3.5a.5.5 0 0 1 0-.66l3-3.5a.5.5 0 0 1 .7-.05Zm8.34 8.26a.5.5 0 0 1-.05-.7l2.72-3.18-2.72-3.17a.5.5 0 1 1 .76-.66l3 3.5a.5.5 0 0 1 0 .66l-3 3.5a.5.5 0 0 1-.7.05Z"></path>
3 | </svg>
4 |
```
--------------------------------------------------------------------------------
/assistants/navigator-assistant/assistant/assets/icon.svg:
--------------------------------------------------------------------------------
```
1 | <svg style="background-color:rgb(238, 172, 178)" width="30" height="30" viewBox="-5 -5 30 30" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M17.73 3.06a.5.5 0 0 1 .27.44V13a.5.5 0 0 1-.21.41l-5 3.5a.5.5 0 0 1-.58 0l-4.71-3.3-4.71 3.3A.5.5 0 0 1 2 16.5V7a.5.5 0 0 1 .21-.41l5-3.5a.5.5 0 0 1 .58 0l4.71 3.3 4.71-3.3a.5.5 0 0 1 .52-.03ZM12 7.26l-4-2.8v8.28l4 2.8V7.26Zm1 8.28 4-2.8V4.46l-4 2.8v8.28Zm-6-2.8V4.46l-4 2.8v8.28l4-2.8Z" fill="rgb(36,36,36)"></path>
3 | </svg>
4 |
```
--------------------------------------------------------------------------------
/libraries/python/skills/skill-library/skill_library/skills/posix/posix_skill.py:
--------------------------------------------------------------------------------
```python
1 | from pathlib import Path
2 |
3 | from skill_library.engine import Skill, SkillConfig
4 |
5 | from .sandbox_shell import SandboxShell
6 |
7 |
8 | class PosixSkillConfig(SkillConfig):
9 | """Configuration for the common skill"""
10 |
11 | sandbox_dir: Path
12 | mount_dir: str = "/mnt/data"
13 |
14 |
15 | class PosixSkill(Skill):
16 | shell: SandboxShell
17 |
18 | def __init__(self, config: PosixSkillConfig):
19 | super().__init__(config)
20 | self.shell = SandboxShell(config.sandbox_dir, config.mount_dir)
21 |
```
--------------------------------------------------------------------------------
/SUPPORT.md:
--------------------------------------------------------------------------------
```markdown
1 | # Support
2 |
3 | ## How to file issues and get help
4 |
5 | This project uses GitHub Issues to track bugs and feature requests. Please search the existing
6 | issues before filing new issues to avoid duplicates. For new issues, file your bug or
7 | feature request as a new Issue.
8 |
9 | For help and questions about using this project, please create a new GitHub Issue with your request.
10 |
11 | ## Microsoft Support Policy
12 |
13 | Support for this project is limited to the resources listed above.
14 |
```
--------------------------------------------------------------------------------
/libraries/python/skills/skill-library/skill_library/skills/posix/routines/pwd.py:
--------------------------------------------------------------------------------
```python
1 | from typing import Any, cast
2 |
3 | from skill_library import AskUserFn, EmitFn, RunContext, RunRoutineFn
4 | from skill_library.skills.posix import PosixSkill
5 |
6 |
7 | async def main(
8 | context: RunContext,
9 | routine_state: dict[str, Any],
10 | emit: EmitFn,
11 | run: RunRoutineFn,
12 | ask_user: AskUserFn,
13 | ) -> str:
14 | """
15 | Return the current directory.
16 | """
17 | posix_skill = cast(PosixSkill, context.skills["posix"])
18 | shell = posix_skill.shell
19 | return shell.pwd()
20 |
```
--------------------------------------------------------------------------------
/mcp-servers/mcp-server-open-deep-research-clone/.vscode/launch.json:
--------------------------------------------------------------------------------
```json
1 | {
2 | "version": "0.2.0",
3 | "configurations": [
4 | {
5 | "type": "debugpy",
6 | "request": "launch",
7 | "name": "mcp-servers: mcp-server-open-deep-research-clone",
8 | "cwd": "${workspaceFolder}",
9 | "module": "mcp_server_open_deep_research_clone.start",
10 | "args": ["--transport", "sse", "--port", "6061"],
11 | "consoleTitle": "mcp-server-open-deep-research-clone"
12 | // "justMyCode": false // Set to false to debug external libraries
13 | }
14 | ]
15 | }
16 |
```
--------------------------------------------------------------------------------
/libraries/python/skills/skill-library/skill_library/skills/fabric/patterns/extract_recommendations/system.md:
--------------------------------------------------------------------------------
```markdown
1 | # IDENTITY and PURPOSE
2 |
3 | You are an expert interpreter of the recommendations present within a piece of content.
4 |
5 | # Steps
6 |
7 | Take the input given and extract the concise, practical recommendations that are either explicitly made in the content, or that naturally flow from it.
8 |
9 | # OUTPUT INSTRUCTIONS
10 |
11 | - Output a bulleted list of up to 20 recommendations, each of no more than 16 words.
12 |
13 | # OUTPUT EXAMPLE
14 |
15 | - Recommendation 1
16 | - Recommendation 2
17 | - Recommendation 3
18 |
19 | # INPUT:
20 |
21 | INPUT:
22 |
```
--------------------------------------------------------------------------------
/workbench-app/src/components/App/FormWidgets/InspectableWidget.tsx:
--------------------------------------------------------------------------------
```typescript
1 | // Copyright (c) Microsoft. All rights reserved.
2 |
3 | import { WidgetProps } from '@rjsf/utils';
4 | import React from 'react';
5 | import { DebugInspector } from '../../Conversations/DebugInspector';
6 |
7 | export const InspectableWidget: React.FC<WidgetProps> = (props) => {
8 | const { value } = props;
9 |
10 | let jsonValue = undefined;
11 | try {
12 | jsonValue = JSON.parse(value as string);
13 | } catch (e) {
14 | return null;
15 | }
16 |
17 | return <DebugInspector debug={jsonValue} />;
18 | };
19 |
```
--------------------------------------------------------------------------------
/libraries/dotnet/WorkbenchConnector/AgentConfig/AgentConfigPropertyAttribute.cs:
--------------------------------------------------------------------------------
```csharp
1 | // Copyright (c) Microsoft. All rights reserved.
2 |
3 | using System;
4 |
5 | // ReSharper disable once CheckNamespace
6 | namespace Microsoft.SemanticWorkbench.Connector;
7 |
8 | [AttributeUsage(AttributeTargets.Property, AllowMultiple = true)]
9 | public class AgentConfigPropertyAttribute : Attribute
10 | {
11 | public string Name { get; }
12 | public object Value { get; }
13 |
14 | public AgentConfigPropertyAttribute(string name, object value)
15 | {
16 | this.Name = name;
17 | this.Value = value;
18 | }
19 | }
20 |
```
--------------------------------------------------------------------------------
/mcp-servers/mcp-server-vscode/src/test/extension.test.ts:
--------------------------------------------------------------------------------
```typescript
1 | import * as assert from 'assert';
2 |
3 | // You can import and use all API from the 'vscode' module
4 | // as well as import your extension to test it
5 | import * as vscode from 'vscode';
6 | // import * as myExtension from '../../extension';
7 |
8 | suite('Extension Test Suite', () => {
9 | vscode.window.showInformationMessage('Start all tests.');
10 |
11 | test('Sample test', () => {
12 | assert.strictEqual(-1, [1, 2, 3].indexOf(5));
13 | assert.strictEqual(-1, [1, 2, 3].indexOf(0));
14 | });
15 | });
16 |
```
--------------------------------------------------------------------------------
/libraries/python/skills/skill-library/skill_library/skills/common/common_skill.py:
--------------------------------------------------------------------------------
```python
1 | from assistant_drive import Drive
2 | from skill_library import LanguageModel, Skill, SkillConfig
3 |
4 |
5 | class CommonSkillConfig(SkillConfig):
6 | """Configuration for the common skill"""
7 |
8 | language_model: LanguageModel
9 | drive: Drive
10 | bing_subscription_key: str = ""
11 | bing_search_url: str = "https://api.bing.microsoft.com/v7.0/search"
12 |
13 |
14 | class CommonSkill(Skill):
15 | config: CommonSkillConfig
16 |
17 | def __init__(self, config: CommonSkillConfig):
18 | super().__init__(config)
19 |
```
--------------------------------------------------------------------------------
/workbench-app/src/redux/features/app/AppState.ts:
--------------------------------------------------------------------------------
```typescript
1 | // Copyright (c) Microsoft. All rights reserved.
2 |
3 | export interface AppState {
4 | // persisted
5 | devMode: boolean;
6 | completedFirstRun: {
7 | app: boolean;
8 | experimental: boolean;
9 | };
10 | hideExperimentalNotice: boolean;
11 | chatWidthPercent: number;
12 | globalContentOpen: boolean;
13 | // transient
14 | isDraggingOverBody?: boolean;
15 | activeConversationId?: string;
16 | errors: {
17 | id: string;
18 | title?: string;
19 | message?: string;
20 | }[];
21 | }
22 |
```
--------------------------------------------------------------------------------
/libraries/python/skills/skill-library/skill_library/skills/fabric/patterns/ai/system.md:
--------------------------------------------------------------------------------
```markdown
1 | # IDENTITY and PURPOSE
2 |
3 | You are an expert at interpreting the heart and spirit of a question and answering in an insightful manner.
4 |
5 | # STEPS
6 |
7 | - Deeply understand what's being asked.
8 |
9 | - Create a full mental model of the input and the question on a virtual whiteboard in your mind.
10 |
11 | - Answer the question in 3-5 Markdown bullets of 10 words each.
12 |
13 | # OUTPUT INSTRUCTIONS
14 |
15 | - Only output Markdown bullets.
16 |
17 | - Do not output warnings or notes—just the requested sections.
18 |
19 | # INPUT:
20 |
21 | INPUT:
22 |
```
--------------------------------------------------------------------------------
/libraries/python/skills/skill-library/skill_library/skills/posix/routines/rm.py:
--------------------------------------------------------------------------------
```python
1 | from typing import Any, cast
2 |
3 | from skill_library import AskUserFn, EmitFn, RunContext, RunRoutineFn
4 | from skill_library.skills.posix import PosixSkill
5 |
6 |
7 | async def main(
8 | context: RunContext, routine_state: dict[str, Any], emit: EmitFn, run: RunRoutineFn, ask_user: AskUserFn, path: str
9 | ) -> str:
10 | """
11 | Remove a file or directory.
12 | """
13 | posix_skill = cast(PosixSkill, context.skills["posix"])
14 | shell = posix_skill.shell
15 | shell.rm(path)
16 | return f"Removed {path}."
17 |
```
--------------------------------------------------------------------------------
/libraries/python/skills/skill-library/skill_library/tests/tst_skill/routines/a_routine.py:
--------------------------------------------------------------------------------
```python
1 | # tst_skill/routines/a_routine.py
2 | from typing import Any
3 |
4 | from skill_library.types import (
5 | AskUserFn,
6 | EmitFn,
7 | RunContext,
8 | RunRoutineFn,
9 | )
10 |
11 |
12 | async def main(
13 | context: RunContext,
14 | routine_state: dict[str, Any],
15 | emit: EmitFn,
16 | run: RunRoutineFn,
17 | ask_user: AskUserFn,
18 | ) -> str:
19 | # Call an action from the same skill
20 | await run("tst_skill.an_action")
21 | # Test asking user something
22 | response = await ask_user("test question")
23 | return response
24 |
```
--------------------------------------------------------------------------------
/libraries/python/guided-conversation/pyproject.toml:
--------------------------------------------------------------------------------
```toml
1 | [project]
2 | name = "guided-conversation"
3 | version = "0.1.0"
4 | description = "MADE:Exploration Guided Conversation"
5 | authors = [{name="MADE:Explorers"}]
6 | readme = "README.md"
7 | requires-python = ">=3.11"
8 | dependencies = [
9 | "semantic-kernel>=1.11.0",
10 | ]
11 |
12 | [tool.uv]
13 | package = true
14 |
15 | [tool.uv.sources]
16 |
17 | [build-system]
18 | requires = ["hatchling"]
19 | build-backend = "hatchling.build"
20 |
21 | [dependency-groups]
22 | dev = [
23 | "pyright>=1.1.389",
24 | ]
25 |
26 | [tool.pyright]
27 | exclude = ["**/.venv", "**/.data", "**/__pycache__"]
28 |
```
--------------------------------------------------------------------------------
/mcp-servers/mcp-server-fusion/mcp_server_fusion/fusion_utils/__init__.py:
--------------------------------------------------------------------------------
```python
1 | from .general_utils import log, handle_error
2 | from .event_utils import (
3 | clear_handlers,
4 | add_handler,
5 | )
6 | from .tool_utils import (
7 | convert_direction,
8 | errorHandler,
9 | FusionContext,
10 | GeometryValidator,
11 | get_sketch_by_name,
12 | UnitsConverter,
13 | )
14 |
15 | __all__ = [
16 | 'add_handler',
17 | 'clear_handlers',
18 | 'convert_direction',
19 | 'errorHandler',
20 | 'FusionContext',
21 | 'GeometryValidator',
22 | 'get_sketch_by_name',
23 | 'handle_error',
24 | 'log',
25 | 'UnitsConverter',
26 | ]
27 |
```
--------------------------------------------------------------------------------
/mcp-servers/mcp-server-vscode/src/tools/search_symbol.d.ts:
--------------------------------------------------------------------------------
```typescript
1 | export declare function searchSymbolTool({ query, useDefinition, maxResults, openFile, }: {
2 | query: string;
3 | useDefinition?: boolean;
4 | maxResults?: number;
5 | openFile?: boolean;
6 | }): Promise<{
7 | definition: {
8 | file: string;
9 | startLine: number;
10 | startColumn: number;
11 | endLine: number;
12 | endColumn: number;
13 | snippet: string;
14 | } | null;
15 | globalSearch: Array<{
16 | file: string;
17 | line: number;
18 | snippet: string;
19 | }>;
20 | }>;
21 |
```
--------------------------------------------------------------------------------
/libraries/python/mcp-tunnel/pyproject.toml:
--------------------------------------------------------------------------------
```toml
1 | [build-system]
2 | requires = ["hatchling"]
3 | build-backend = "hatchling.build"
4 |
5 | [project]
6 | name = "mcp-tunnel"
7 | version = "0.1.0"
8 | description = "Command line tool for opening tunnels to local MCP servers."
9 | authors = [{ name = "Semantic Workbench Team" }]
10 | readme = "README.md"
11 | requires-python = ">=3.11"
12 | dependencies = [
13 | "pyyaml>=6.0.2",
14 | "termcolor>=2.5.0",
15 | ]
16 |
17 | [project.optional-dependencies]
18 |
19 |
20 | [project.scripts]
21 | mcp-tunnel = "mcp_tunnel._main:main"
22 |
23 |
24 | [dependency-groups]
25 | dev = ["pyright>=1.1.389"]
26 |
```
--------------------------------------------------------------------------------
/libraries/python/skills/skill-library/skill_library/skills/posix/routines/read_file.py:
--------------------------------------------------------------------------------
```python
1 | from typing import Any, cast
2 |
3 | from skill_library import AskUserFn, EmitFn, RunContext, RunRoutineFn
4 | from skill_library.skills.posix import PosixSkill
5 |
6 |
7 | async def main(
8 | context: RunContext,
9 | routine_state: dict[str, Any],
10 | emit: EmitFn,
11 | run: RunRoutineFn,
12 | ask_user: AskUserFn,
13 | filename: str,
14 | ) -> str:
15 | """
16 | Read the contents of a file.
17 | """
18 | posix_skill = cast(PosixSkill, context.skills["posix"])
19 | shell = posix_skill.shell
20 | return shell.read_file(filename)
21 |
```
--------------------------------------------------------------------------------
/workbench-app/src/components/Conversations/ContentRenderers/ContentListRenderer.tsx:
--------------------------------------------------------------------------------
```typescript
1 | // Copyright (c) Microsoft. All rights reserved.
2 |
3 | import React from 'react';
4 | import { ContentRenderer } from './ContentRenderer';
5 |
6 | interface ContentListRendererProps {
7 | contentList: string[];
8 | }
9 |
10 | export const ContentListRenderer: React.FC<ContentListRendererProps> = (props) => {
11 | const { contentList } = props;
12 | return (
13 | <div>
14 | {contentList.map((content, index) => (
15 | <ContentRenderer key={index} content={content} />
16 | ))}
17 | </div>
18 | );
19 | };
20 |
```
--------------------------------------------------------------------------------
/libraries/python/skills/skill-library/skill_library/skills/fabric/patterns/explain_math/system.md:
--------------------------------------------------------------------------------
```markdown
1 | # IDENTITY and PURPOSE
2 | I want you to act as a math teacher. I will provide some mathematical equations or concepts, and it will be your job to explain them in easy-to-understand terms. This could include providing step-by-step instructions for solving a problem, demonstrating various techniques with visuals or suggesting online resources for further study.
3 |
4 | # OUTPUT INSTRUCTIONS
5 | - Only output Markdown.
6 | - Ensure you follow ALL these instructions when creating your output.
7 |
8 | # INPUT
9 | My first request is:
```
--------------------------------------------------------------------------------
/libraries/python/skills/skill-library/skill_library/skills/posix/routines/ls.py:
--------------------------------------------------------------------------------
```python
1 | from typing import Any, cast
2 |
3 | from skill_library import AskUserFn, EmitFn, RunContext, RunRoutineFn
4 | from skill_library.skills.posix import PosixSkill
5 |
6 |
7 | async def main(
8 | context: RunContext,
9 | routine_state: dict[str, Any],
10 | emit: EmitFn,
11 | run: RunRoutineFn,
12 | ask_user: AskUserFn,
13 | path: str = ".",
14 | ) -> list[str]:
15 | """
16 | Change the current working directory.
17 | """
18 | posix_skill = cast(PosixSkill, context.skills["posix"])
19 | shell = posix_skill.shell
20 | return shell.ls(path)
21 |
```
--------------------------------------------------------------------------------
/libraries/python/skills/skill-library/skill_library/skills/fabric/routines/list.py:
--------------------------------------------------------------------------------
```python
1 | from pathlib import Path
2 | from typing import Any
3 |
4 | from skill_library import AskUserFn, EmitFn, RunContext, RunRoutineFn
5 |
6 |
7 | async def main(
8 | context: RunContext,
9 | routine_state: dict[str, Any],
10 | emit: EmitFn,
11 | run: RunRoutineFn,
12 | ask_user: AskUserFn,
13 | ) -> str:
14 | """List fabric patterns."""
15 |
16 | pattern_dir = Path(__file__).parent.parent / "patterns"
17 | dirs = [d.name for d in pattern_dir.iterdir() if d.is_dir()]
18 | patterns = "\n- ".join(dirs)
19 | return f"```markdown\n{patterns}\n```"
20 |
```
--------------------------------------------------------------------------------
/assistants/project-assistant/assistant/tools/base.py:
--------------------------------------------------------------------------------
```python
1 | """
2 | Base classes for Knowledge Transfer Assistant tools.
3 | """
4 |
5 | from semantic_workbench_assistant.assistant_app import ConversationContext
6 |
7 |
8 | class ToolsBase:
9 | """Base class for tool functionality."""
10 |
11 | def __init__(self, context: ConversationContext):
12 | """
13 | Initialize the tools base with the current conversation context.
14 |
15 | Args:
16 | context: The conversation context
17 | role: The assistant's role (ConversationRole enum)
18 | """
19 | self.context = context
20 |
```
--------------------------------------------------------------------------------
/mcp-servers/mcp-server-memory-user-bio/.vscode/launch.json:
--------------------------------------------------------------------------------
```json
1 | {
2 | "version": "0.2.0",
3 | "configurations": [
4 | {
5 | "type": "debugpy",
6 | "request": "launch",
7 | "name": "mcp-servers: mcp-server-memory-user-bio",
8 | "cwd": "${workspaceFolder}",
9 | "module": "mcp_server_memory_user_bio.start",
10 | "args": [
11 | "--transport",
12 | "sse",
13 | "--port",
14 | "34737",
15 | "--enable-client-roots"
16 | ],
17 | "consoleTitle": "mcp-server-memory-user-bio"
18 | // "justMyCode": false // Set to false to debug external libraries
19 | }
20 | ]
21 | }
22 |
```
--------------------------------------------------------------------------------
/tools/run-service.ps1:
--------------------------------------------------------------------------------
```
1 | #!/usr/bin/env pwsh
2 |
3 | # Exit on error
4 | $ErrorActionPreference = "Stop"
5 |
6 | # Determine the root directory of the script
7 | $scriptPath = $PSScriptRoot
8 | $root = Resolve-Path "$scriptPath\.."
9 |
10 | # Change directory to the root
11 | Set-Location $root
12 | # ================================================================
13 |
14 | # Change directory to workbench-service
15 | Set-Location "workbench-service"
16 |
17 | # Note: this creates the .data folder at
18 | # path ./workbench-service/.data
19 | # rather than ./workbench-service/.data
20 | uv run start-service
21 |
```
--------------------------------------------------------------------------------
/libraries/python/skills/skill-library/skill_library/skills/posix/routines/touch.py:
--------------------------------------------------------------------------------
```python
1 | from typing import Any, cast
2 |
3 | from skill_library import AskUserFn, EmitFn, RunContext, RunRoutineFn
4 | from skill_library.skills.posix import PosixSkill
5 |
6 |
7 | async def main(
8 | context: RunContext,
9 | routine_state: dict[str, Any],
10 | emit: EmitFn,
11 | run: RunRoutineFn,
12 | ask_user: AskUserFn,
13 | filename: str,
14 | ) -> str:
15 | """
16 | Create an empty file.
17 | """
18 | posix_skill = cast(PosixSkill, context.skills["posix"])
19 | shell = posix_skill.shell
20 | shell.touch(filename)
21 | return f"Created file {filename}."
22 |
```
--------------------------------------------------------------------------------
/ruff.toml:
--------------------------------------------------------------------------------
```toml
1 | line-length = 120
2 | target-version = "py311"
3 |
4 | [format]
5 | docstring-code-format = true
6 | line-ending = "lf"
7 | preview = true
8 |
9 | [lint]
10 | select = [
11 | "F", # pyflakes
12 | "E", # pycodestyle
13 | "I", # isort
14 | "N", # pep8-naming
15 | "UP", # pyupgrade
16 | "RUF", # ruff
17 | "B", # flake8-bugbear
18 | "C4", # flake8-comprehensions
19 | "ISC", # flake8-implicit-str-concat
20 | "PIE", # flake8-pie
21 | "PT", # flake-pytest-style
22 | "PTH", # flake8-use-pathlib
23 | "SIM", # flake8-simplify
24 | "TID", # flake8-tidy-imports
25 | ]
26 |
```
--------------------------------------------------------------------------------
/workbench-app/src/models/Conversation.ts:
--------------------------------------------------------------------------------
```typescript
1 | // Copyright (c) Microsoft. All rights reserved.
2 |
3 | import { ConversationMessage } from './ConversationMessage';
4 | import { ConversationParticipant } from './ConversationParticipant';
5 |
6 | export interface Conversation {
7 | id: string;
8 | ownerId: string;
9 | title: string;
10 | created: string;
11 | latest_message?: ConversationMessage;
12 | participants: ConversationParticipant[];
13 | metadata: {
14 | [key: string]: any;
15 | };
16 | conversationPermission: 'read' | 'read_write';
17 | importedFromConversationId?: string;
18 | }
19 |
```
--------------------------------------------------------------------------------
/libraries/python/llm-client/pyproject.toml:
--------------------------------------------------------------------------------
```toml
1 | [project]
2 | name = "llm-client"
3 | version = "0.1.0"
4 | description = "LLM client types"
5 | authors = [{ name = "Semantic Workbench Team" }]
6 | readme = "README.md"
7 | requires-python = ">=3.11"
8 | dependencies = [
9 | "pydantic>=2.10.6",
10 | ]
11 |
12 | [dependency-groups]
13 | dev = ["pyright>=1.1.389"]
14 |
15 | [build-system]
16 | requires = ["hatchling"]
17 | build-backend = "hatchling.build"
18 |
19 | [tool.pytest.ini_options]
20 | addopts = ["-vv"]
21 | log_cli = true
22 | log_cli_level = "INFO"
23 | log_cli_format = "%(asctime)s | %(levelname)-7s | %(name)s | %(message)s"
24 | testpaths = ["tests"]
25 |
```
--------------------------------------------------------------------------------
/libraries/python/skills/skill-library/skill_library/skills/posix/routines/mkdir.py:
--------------------------------------------------------------------------------
```python
1 | from typing import Any, cast
2 |
3 | from skill_library import AskUserFn, EmitFn, RunContext, RunRoutineFn
4 | from skill_library.skills.posix import PosixSkill
5 |
6 |
7 | async def main(
8 | context: RunContext,
9 | routine_state: dict[str, Any],
10 | emit: EmitFn,
11 | run: RunRoutineFn,
12 | ask_user: AskUserFn,
13 | dirname: str,
14 | ) -> str:
15 | """
16 | Create a new directory.
17 | """
18 | posix_skill = cast(PosixSkill, context.skills["posix"])
19 | shell = posix_skill.shell
20 | shell.mkdir(dirname)
21 | return f"Created directory {dirname}."
22 |
```
--------------------------------------------------------------------------------
/libraries/python/openai-client/openai_client/chat_driver/message_history_providers/message_history_provider.py:
--------------------------------------------------------------------------------
```python
1 | from typing import Protocol
2 |
3 | from openai.types.chat import (
4 | ChatCompletionMessageParam,
5 | )
6 |
7 |
8 | class MessageHistoryProviderProtocol(Protocol):
9 | """
10 | We'll supply you with a local provider to manage your message history, but
11 | if you want to use your own message history storage, just pass in something
12 | that implements this protocol and we'll use that instead.
13 | """
14 |
15 | async def get(self) -> list[ChatCompletionMessageParam]: ...
16 |
17 | async def append(self, message: ChatCompletionMessageParam) -> None: ...
18 |
```
--------------------------------------------------------------------------------
/mcp-servers/mcp-server-bing-search/mcp_server_bing_search/web/get_content.py:
--------------------------------------------------------------------------------
```python
1 | import logging
2 |
3 | import httpx
4 |
5 | logger = logging.getLogger(__name__)
6 |
7 |
8 | async def get_raw_web_content(url: str) -> str:
9 | try:
10 | async with httpx.AsyncClient(timeout=10) as client:
11 | response = await client.get(url)
12 | response.raise_for_status()
13 | return response.text
14 | except httpx.RequestError as e:
15 | logger.error(f"Failed to get web content: {e}")
16 | return ""
17 | except Exception as e:
18 | logger.error(f"Unexpected error fetching web content: {e}")
19 | return ""
20 |
```
--------------------------------------------------------------------------------
/assistants/document-assistant/assistant/assets/icon.svg:
--------------------------------------------------------------------------------
```
1 | <svg style="background-color:rgb(155,217,219)" width="30" height="30" viewBox="-5 -5 30 30" xmlns="http://www.w3.org/2000/svg">
2 | <path fill="rgb(36,36,36)" d="M6.5 10a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1h-7Zm0 2a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1h-7Zm0 2a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1h-7ZM4 4c0-1.1.9-2 2-2h4.59c.4 0 .78.16 1.06.44l3.91 3.91c.28.28.44.67.44 1.06V16a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V4Zm2-1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V8h-3.5A1.5 1.5 0 0 1 10 6.5V3H6Zm5.5 4h3.3L11 3.2v3.3c0 .28.22.5.5.5Z"></path>
3 | </svg>
4 |
```
--------------------------------------------------------------------------------
/libraries/python/skills/skill-library/skill_library/skills/posix/routines/mv.py:
--------------------------------------------------------------------------------
```python
1 | from typing import Any, cast
2 |
3 | from skill_library import AskUserFn, EmitFn, RunContext, RunRoutineFn
4 | from skill_library.skills.posix import PosixSkill
5 |
6 |
7 | async def main(
8 | context: RunContext,
9 | routine_state: dict[str, Any],
10 | emit: EmitFn,
11 | run: RunRoutineFn,
12 | ask_user: AskUserFn,
13 | src: str,
14 | dest: str,
15 | ) -> str:
16 | """
17 | Move a file or directory.
18 | """
19 | posix_skill = cast(PosixSkill, context.skills["posix"])
20 | shell = posix_skill.shell
21 | shell.mv(src, dest)
22 | return f"Moved {src} to {dest}."
23 |
```
--------------------------------------------------------------------------------
/libraries/dotnet/WorkbenchConnector/Storage/AgentInfo.cs:
--------------------------------------------------------------------------------
```csharp
1 | // Copyright (c) Microsoft. All rights reserved.
2 |
3 | using System.Text.Json.Serialization;
4 |
5 | // ReSharper disable once CheckNamespace
6 | namespace Microsoft.SemanticWorkbench.Connector;
7 |
8 | public class AgentInfo
9 | {
10 | [JsonPropertyName("id")]
11 | [JsonPropertyOrder(0)]
12 | public string Id { get; set; } = string.Empty;
13 |
14 | [JsonPropertyName("name")]
15 | [JsonPropertyOrder(1)]
16 | public string Name { get; set; } = string.Empty;
17 |
18 | [JsonPropertyName("config")]
19 | [JsonPropertyOrder(2)]
20 | public object Config { get; set; } = null!;
21 | }
22 |
```
--------------------------------------------------------------------------------
/libraries/python/chat-context-toolkit/chat_context_toolkit/history/__init__.py:
--------------------------------------------------------------------------------
```python
1 | """Budget controls for chat message history."""
2 |
3 | from ._history import apply_budget_to_history_messages
4 | from ._types import (
5 | HistoryMessage,
6 | HistoryMessageProtocol,
7 | HistoryMessageProvider,
8 | MessageHistoryBudgetResult,
9 | NewTurn,
10 | OpenAIHistoryMessageParam,
11 | TokenCounter,
12 | )
13 |
14 | __all__ = [
15 | "apply_budget_to_history_messages",
16 | "HistoryMessageProtocol",
17 | "HistoryMessage",
18 | "HistoryMessageProvider",
19 | "MessageHistoryBudgetResult",
20 | "NewTurn",
21 | "OpenAIHistoryMessageParam",
22 | "TokenCounter",
23 | ]
24 |
```
--------------------------------------------------------------------------------
/aspire-orchestrator/Aspire.AppHost/appsettings.json:
--------------------------------------------------------------------------------
```json
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft.AspNetCore": "Warning",
6 | "Aspire.Hosting.Dcp": "Warning"
7 | }
8 | },
9 | "Workbench": {
10 | // Used only when running Aspire locally, ie not in the cloud
11 | // Port 4000 is the default port used also when not using Aspire.
12 | // Using the same port allows to keep cookies and other local settings.
13 | "AppPort": 4000
14 | },
15 | "EntraID": {
16 | "Authority": "https://login.microsoftonline.com/common",
17 | "ClientId": "22cb77c3-ca98-4a26-b4db-ac4dcecba690"
18 | }
19 | }
20 |
```
--------------------------------------------------------------------------------
/libraries/python/skills/skill-library/skill_library/skills/fabric/patterns/stringify/system.md:
--------------------------------------------------------------------------------
```markdown
1 | # IDENTITY and PURPOSE
2 |
3 | You can turn any document of any length into a well-formatted string that can be input as a variable in a command line.
4 |
5 | # STEPS
6 |
7 | - Fully understand the project from the input.
8 |
9 | # OUTPUT SECTIONS
10 |
11 | - Output only the final string.
12 |
13 | # OUTPUT INSTRUCTIONS
14 |
15 | - Output as though it were surrounded by quotes, but without the quotes.
16 | - Escape the string properly.
17 | - Make the string one-line (so escape returns and other non-command-line characters).
18 | - Keep the original content other than things you need to escape.
19 |
20 | # INPUT
21 |
22 | INPUT:
23 |
```
--------------------------------------------------------------------------------
/workbench-app/src/components/Conversations/ChatInputPlugins/TypeaheadMenuPlugin.css:
--------------------------------------------------------------------------------
```css
1 | .typeahead-popover.mentions-menu {
2 | position: absolute;
3 | z-index: 1000;
4 | bottom: 20px;
5 | background-color: white;
6 | border: 1px solid #ccc;
7 | }
8 |
9 | .typeahead-popover.mentions-menu ul {
10 | list-style-type: none;
11 | margin: 0;
12 | padding: 0;
13 | max-height: 200px;
14 | overflow-y: auto;
15 | width: 100%;
16 | }
17 |
18 | .typeahead-popover.mentions-menu li {
19 | padding: 5px 10px;
20 | cursor: pointer;
21 | }
22 |
23 | .typeahead-popover.mentions-menu li.selected {
24 | background-color: #ccc;
25 | }
26 |
27 | .typeahead-popover.mentions-menu li label {
28 | white-space: nowrap;
29 | }
30 |
```
--------------------------------------------------------------------------------
/libraries/python/skills/skill-library/skill_library/skills/fabric/patterns/clean_text/system.md:
--------------------------------------------------------------------------------
```markdown
1 | # IDENTITY and PURPOSE
2 |
3 | You are an expert at cleaning up broken and, malformatted, text, for example: line breaks in weird places, etc.
4 |
5 | # Steps
6 |
7 | - Read the entire document and fully understand it.
8 | - Remove any strange line breaks that disrupt formatting.
9 | - Add capitalization, punctuation, line breaks, paragraphs and other formatting where necessary.
10 | - Do NOT change any content or spelling whatsoever.
11 |
12 | # OUTPUT INSTRUCTIONS
13 |
14 | - Output the full, properly-formatted text.
15 | - Do not output warnings or notes—just the requested sections.
16 |
17 | # INPUT:
18 |
19 | INPUT:
20 |
```
--------------------------------------------------------------------------------
/mcp-servers/mcp-server-vscode/.vscode/tasks.json:
--------------------------------------------------------------------------------
```json
1 | {
2 | "version": "2.0.0",
3 | "tasks": [
4 | {
5 | "label": "watch",
6 | "type": "npm",
7 | "script": "watch",
8 | "isBackground": true,
9 | "problemMatcher": {
10 | "owner": "custom",
11 | "fileLocation": "absolute",
12 | "pattern": {
13 | "regexp": "a^"
14 | },
15 | "background": {
16 | "activeOnStart": true,
17 | "beginsPattern": "^\\[webpack-cli\\] Compiler starting",
18 | "endsPattern": "^webpack\\s+.*compiled successfully.*$"
19 | }
20 | },
21 | "presentation": {
22 | "clear": true
23 | }
24 | }
25 | ]
26 | }
27 |
```
--------------------------------------------------------------------------------
/libraries/python/assistant-extensions/assistant_extensions/mcp/_sampling_handler.py:
--------------------------------------------------------------------------------
```python
1 | from typing import Any, Protocol
2 |
3 | from mcp import ClientSession, CreateMessageResult
4 | from mcp.shared.context import RequestContext
5 | from mcp.types import CreateMessageRequestParams, ErrorData
6 |
7 | from assistant_extensions.mcp._model import MCPSamplingMessageHandler
8 |
9 |
10 | class SamplingHandler(Protocol):
11 | async def handle_message(
12 | self,
13 | context: RequestContext[ClientSession, Any],
14 | params: CreateMessageRequestParams,
15 | ) -> CreateMessageResult | ErrorData: ...
16 |
17 | @property
18 | def message_handler(self) -> MCPSamplingMessageHandler: ...
19 |
```
--------------------------------------------------------------------------------
/libraries/python/skills/skill-library/skill_library/skills/fabric/patterns/extract_references/system.md:
--------------------------------------------------------------------------------
```markdown
1 | # IDENTITY and PURPOSE
2 |
3 | You are an expert extractor of references to art, stories, books, literature, papers, and other sources of learning from content.
4 |
5 | # Steps
6 |
7 | Take the input given and extract all references to art, stories, books, literature, papers, and other sources of learning into a bulleted list.
8 |
9 | # OUTPUT INSTRUCTIONS
10 |
11 | - Output up to 20 references from the content.
12 | - Output each into a bullet of no more than 16 words.
13 |
14 | # EXAMPLE
15 |
16 | - Moby Dick by Herman Melville
17 | - Superforecasting, by Bill Tetlock
18 | - Aesop's Fables
19 | - Rilke's Poetry
20 |
21 | # INPUT:
22 |
23 | INPUT:
24 |
```
--------------------------------------------------------------------------------
/tools/run-workbench-chatbot.ps1:
--------------------------------------------------------------------------------
```
1 | #!/usr/bin/env pwsh
2 |
3 | # Exit on error
4 | $ErrorActionPreference = "Stop"
5 |
6 | # Determine the root directory of the script
7 | $scriptPath = $PSScriptRoot
8 | $root = Resolve-Path "$scriptPath\.."
9 |
10 | # Change directory to the root
11 | Set-Location $root
12 |
13 | # Run the scripts
14 | Start-Process -FilePath "pwsh" -ArgumentList "-NoExit", "-File", "$root\tools\run-service.ps1" -PassThru
15 | Start-Process -FilePath "pwsh" -ArgumentList "-NoExit", "-File", "$root\tools\run-python-example2.ps1" -PassThru
16 | Start-Process -FilePath "pwsh" -ArgumentList "-NoExit", "-File", "$root\tools\run-app.ps1" -PassThru
17 |
```
--------------------------------------------------------------------------------
/workbench-app/src/models/AssistantServiceRegistration.ts:
--------------------------------------------------------------------------------
```typescript
1 | // Copyright (c) Microsoft. All rights reserved.
2 |
3 | export interface NewAssistantServiceRegistration {
4 | assistantServiceId: string;
5 | name: string;
6 | description: string;
7 | includeInListing: boolean;
8 | }
9 |
10 | export interface AssistantServiceRegistration {
11 | assistantServiceId: string;
12 | assistantServiceOnline: boolean;
13 | assistantServiceUrl: string;
14 | name: string;
15 | description: string;
16 | includeInListing: boolean;
17 | createdDateTime: string;
18 | createdByUserId: string;
19 | createdByUserName: string;
20 | apiKeyName: string;
21 | apiKey?: string;
22 | }
23 |
```
--------------------------------------------------------------------------------
/libraries/python/skills/skill-library/skill_library/skills/fabric/patterns/extract_videoid/system.md:
--------------------------------------------------------------------------------
```markdown
1 | # IDENTITY and PURPOSE
2 |
3 | You are an expert at extracting video IDs from any URL so they can be passed on to other applications.
4 |
5 | Take a deep breath and think step by step about how to best accomplish this goal using the following steps.
6 |
7 | # STEPS
8 |
9 | - Read the whole URL so you fully understand its components
10 |
11 | - Find the portion of the URL that identifies the video ID
12 |
13 | - Output just that video ID by itself
14 |
15 | # OUTPUT INSTRUCTIONS
16 |
17 | - Output the video ID by itself with NOTHING else included
18 | - Do not output any warnings or errors or notes—just the output.
19 |
20 | # INPUT:
21 |
22 | INPUT:
23 |
```
--------------------------------------------------------------------------------
/libraries/python/skills/skill-library/skill_library/skills/posix/routines/write_file.py:
--------------------------------------------------------------------------------
```python
1 | from typing import Any, cast
2 |
3 | from skill_library import AskUserFn, EmitFn, RunContext, RunRoutineFn
4 | from skill_library.skills.posix.posix_skill import PosixSkill
5 |
6 |
7 | async def main(
8 | context: RunContext,
9 | routine_state: dict[str, Any],
10 | emit: EmitFn,
11 | run: RunRoutineFn,
12 | ask_user: AskUserFn,
13 | filename: str,
14 | content: str,
15 | ) -> str:
16 | """
17 | Write content to a file.
18 | """
19 | posix_skill = cast(PosixSkill, context.skills["posix"])
20 | shell = posix_skill.shell
21 | shell.write_file(filename, content)
22 | return f"Wrote content to {filename}."
23 |
```