{"owner":"OutlineFoundation","repo":"outline-apps","hasSkills":true,"hasMcp":false,"mcpConfig":null,"found":["CLAUDE.md","AGENTS.md"],"skills":{"CLAUDE.md":"This project uses AGENTS.md instead of CLAUDE.md.\n","AGENTS.md":"# Welcome to the Outline Monorepo!\n\nThis document provides a guide for AI and human agents working with the Outline codebase.\n\n## Repository Structure\n\nThe Outline monorepo is organized into three main components:\n\n*   `/client`: The Outline Client application, available on all major platforms. See [`client/AGENTS.md`](client/AGENTS.md).\n*   `/server_manager`: A graphical application to create and manage Outline Servers. See [`server_manager/AGENTS.md`](server_manager/AGENTS.md).\n*   `/infrastructure`: The build system and shared TypeScript utilities. See [`infrastructure/AGENTS.md`](infrastructure/AGENTS.md).\n\n## The `npm run action` Command\n\nThe primary entry point for all development tasks is `npm run action <path>`, which resolves to `.action.sh` or `.action.mjs` files in the repo. Run `npm run action list` to see all available actions. Pass flags after `--`:\n\n```sh\nnpm run action client/src/cordova/setup macos -- --buildMode=release\n```\n\n### Common Actions\n\n*   `npm run action list`: Lists all available actions.\n*   `npm run action client/web/start`: Starts a dev server for the shared web UI.\n*   `npm run action server_manager/www/start`: Starts a dev server for the Manager UI.\n*   `npm run action <component>/test`: Runs tests (e.g. `npm run action client/web/test`).\n*   `npm run action <component>/build`: Builds a component (e.g. `npm run action client/electron/build linux -- --arch=x64`).\n\n### Other useful commands\n\n*   `npm run reset`: Clean and reinstall all dependencies (fixes most build issues).\n*   `npm run storybook`: Launch the Storybook UI component explorer.\n*   `npm run lint:gts`: Lint TypeScript (pass filepaths on macOS; works on all files on Linux).\n\n## Code Style\n\n*   **TypeScript**: Follows [Google's TypeScript style](https://google.github.io/styleguide/tsguide.html), enforced by [`gts`](https://github.com/google/gts). Run `npm run lint:gts` to check and `npm run format:all` to auto-fix (Linux only for whole codebase; pass specific filepaths on macOS).\n*   **Go**: Follows standard Go style. Use `gofmt` and `go vet`.\n\n## Requirements\n\n| Component | Version |\n|-----------|---------|\n| Node.js   | 22 — run `nvm use` if you have nvm |\n| Go        | 1.22+   |\n\nPlatform-specific requirements (Android SDK, Xcode, zig for cross-compilation) are documented in the relevant subdirectory AGENTS.md files.\n\n## Common Concepts\n\n*   **Access Keys**: Credentials used by Outline clients to connect to an Outline server. Generated by the Outline Manager.\n*   **Shadowbox**: The core proxy component of Outline, responsible for handling network traffic.\n*   **Outline Client**: The end-user application for connecting to the internet through an Outline server.\n*   **Server Manager**: The application used to create and manage Outline servers on cloud providers.\n*   **Electron**: Framework used to build the desktop versions of the Outline Client and Server Manager.\n*   **Cordova**: Framework used to build the mobile (iOS/Android) and macOS versions of the Outline Client.\n*   **Lit**: The UI framework for web components. All new components use Lit. The client has fully migrated; the server_manager still has legacy Polymer components in its app shell being migrated.\n*   **OutlineAction**: A custom build script (`.action.sh` or `.action.mjs`) that defines a task runnable via `npm run action`.\n"},"files":{"CLAUDE.md":"This project uses AGENTS.md instead of CLAUDE.md.\n","AGENTS.md":"# Welcome to the Outline Monorepo!\n\nThis document provides a guide for AI and human agents working with the Outline codebase.\n\n## Repository Structure\n\nThe Outline monorepo is organized into three main components:\n\n*   `/client`: The Outline Client application, available on all major platforms. See [`client/AGENTS.md`](client/AGENTS.md).\n*   `/server_manager`: A graphical application to create and manage Outline Servers. See [`server_manager/AGENTS.md`](server_manager/AGENTS.md).\n*   `/infrastructure`: The build system and shared TypeScript utilities. See [`infrastructure/AGENTS.md`](infrastructure/AGENTS.md).\n\n## The `npm run action` Command\n\nThe primary entry point for all development tasks is `npm run action <path>`, which resolves to `.action.sh` or `.action.mjs` files in the repo. Run `npm run action list` to see all available actions. Pass flags after `--`:\n\n```sh\nnpm run action client/src/cordova/setup macos -- --buildMode=release\n```\n\n### Common Actions\n\n*   `npm run action list`: Lists all available actions.\n*   `npm run action client/web/start`: Starts a dev server for the shared web UI.\n*   `npm run action server_manager/www/start`: Starts a dev server for the Manager UI.\n*   `npm run action <component>/test`: Runs tests (e.g. `npm run action client/web/test`).\n*   `npm run action <component>/build`: Builds a component (e.g. `npm run action client/electron/build linux -- --arch=x64`).\n\n### Other useful commands\n\n*   `npm run reset`: Clean and reinstall all dependencies (fixes most build issues).\n*   `npm run storybook`: Launch the Storybook UI component explorer.\n*   `npm run lint:gts`: Lint TypeScript (pass filepaths on macOS; works on all files on Linux).\n\n## Code Style\n\n*   **TypeScript**: Follows [Google's TypeScript style](https://google.github.io/styleguide/tsguide.html), enforced by [`gts`](https://github.com/google/gts). Run `npm run lint:gts` to check and `npm run format:all` to auto-fix (Linux only for whole codebase; pass specific filepaths on macOS).\n*   **Go**: Follows standard Go style. Use `gofmt` and `go vet`.\n\n## Requirements\n\n| Component | Version |\n|-----------|---------|\n| Node.js   | 22 — run `nvm use` if you have nvm |\n| Go        | 1.22+   |\n\nPlatform-specific requirements (Android SDK, Xcode, zig for cross-compilation) are documented in the relevant subdirectory AGENTS.md files.\n\n## Common Concepts\n\n*   **Access Keys**: Credentials used by Outline clients to connect to an Outline server. Generated by the Outline Manager.\n*   **Shadowbox**: The core proxy component of Outline, responsible for handling network traffic.\n*   **Outline Client**: The end-user application for connecting to the internet through an Outline server.\n*   **Server Manager**: The application used to create and manage Outline servers on cloud providers.\n*   **Electron**: Framework used to build the desktop versions of the Outline Client and Server Manager.\n*   **Cordova**: Framework used to build the mobile (iOS/Android) and macOS versions of the Outline Client.\n*   **Lit**: The UI framework for web components. All new components use Lit. The client has fully migrated; the server_manager still has legacy Polymer components in its app shell being migrated.\n*   **OutlineAction**: A custom build script (`.action.sh` or `.action.mjs`) that defines a task runnable via `npm run action`.\n"},"items":[{"name":"CLAUDE.md","path":"CLAUDE.md","title":"CLAUDE.md","content":"This project uses AGENTS.md instead of CLAUDE.md.\n","category":"root","tokens":13},{"name":"AGENTS.md","path":"AGENTS.md","title":"AGENTS.md","content":"# Welcome to the Outline Monorepo!\n\nThis document provides a guide for AI and human agents working with the Outline codebase.\n\n## Repository Structure\n\nThe Outline monorepo is organized into three main components:\n\n*   `/client`: The Outline Client application, available on all major platforms. See [`client/AGENTS.md`](client/AGENTS.md).\n*   `/server_manager`: A graphical application to create and manage Outline Servers. See [`server_manager/AGENTS.md`](server_manager/AGENTS.md).\n*   `/infrastructure`: The build system and shared TypeScript utilities. See [`infrastructure/AGENTS.md`](infrastructure/AGENTS.md).\n\n## The `npm run action` Command\n\nThe primary entry point for all development tasks is `npm run action <path>`, which resolves to `.action.sh` or `.action.mjs` files in the repo. Run `npm run action list` to see all available actions. Pass flags after `--`:\n\n```sh\nnpm run action client/src/cordova/setup macos -- --buildMode=release\n```\n\n### Common Actions\n\n*   `npm run action list`: Lists all available actions.\n*   `npm run action client/web/start`: Starts a dev server for the shared web UI.\n*   `npm run action server_manager/www/start`: Starts a dev server for the Manager UI.\n*   `npm run action <component>/test`: Runs tests (e.g. `npm run action client/web/test`).\n*   `npm run action <component>/build`: Builds a component (e.g. `npm run action client/electron/build linux -- --arch=x64`).\n\n### Other useful commands\n\n*   `npm run reset`: Clean and reinstall all dependencies (fixes most build issues).\n*   `npm run storybook`: Launch the Storybook UI component explorer.\n*   `npm run lint:gts`: Lint TypeScript (pass filepaths on macOS; works on all files on Linux).\n\n## Code Style\n\n*   **TypeScript**: Follows [Google's TypeScript style](https://google.github.io/styleguide/tsguide.html), enforced by [`gts`](https://github.com/google/gts). Run `npm run lint:gts` to check and `npm run format:all` to auto-fix (Linux only for whole codebase; pass specific filepaths on macOS).\n*   **Go**: Follows standard Go style. Use `gofmt` and `go vet`.\n\n## Requirements\n\n| Component | Version |\n|-----------|---------|\n| Node.js   | 22 — run `nvm use` if you have nvm |\n| Go        | 1.22+   |\n\nPlatform-specific requirements (Android SDK, Xcode, zig for cross-compilation) are documented in the relevant subdirectory AGENTS.md files.\n\n## Common Concepts\n\n*   **Access Keys**: Credentials used by Outline clients to connect to an Outline server. Generated by the Outline Manager.\n*   **Shadowbox**: The core proxy component of Outline, responsible for handling network traffic.\n*   **Outline Client**: The end-user application for connecting to the internet through an Outline server.\n*   **Server Manager**: The application used to create and manage Outline servers on cloud providers.\n*   **Electron**: Framework used to build the desktop versions of the Outline Client and Server Manager.\n*   **Cordova**: Framework used to build the mobile (iOS/Android) and macOS versions of the Outline Client.\n*   **Lit**: The UI framework for web components. All new components use Lit. The client has fully migrated; the server_manager still has legacy Polymer components in its app shell being migrated.\n*   **OutlineAction**: A custom build script (`.action.sh` or `.action.mjs`) that defines a task runnable via `npm run action`.\n","category":"root","tokens":837}]}