### Install Project Dependencies - Bash Source: https://chaterm.ai/docs/contributing This sequence of commands installs all necessary project dependencies for Chaterm. It first runs a script to patch the package-lock.json file and then installs the project's dependencies using npm. ```bash node scripts/patch-package-lock.js npm install ``` -------------------------------- ### Start Development Server - Bash Source: https://chaterm.ai/docs/contributing This command starts the development server for the Chaterm project. It's typically used to run the application in a development mode, allowing for hot-reloading and debugging. ```bash npm run dev ``` -------------------------------- ### Install Electron - Bash Source: https://chaterm.ai/docs/contributing This command installs Electron as a development dependency for the Chaterm project. It uses npm, the Node Package Manager, to download and add Electron to your project's devDependencies. ```bash npm i electron -D ``` -------------------------------- ### Importing Private Key (Manual Input Example) Source: https://chaterm.ai/docs/manage/keys This code snippet demonstrates the expected format for manually inputting a private key. It includes the standard BEGIN and END markers for RSA private keys. ```text -----BEGIN RSA PRIVATE KEY----- ... -----END RSA PRIVATE KEY----- ``` -------------------------------- ### Clone Repository and Navigate - Bash Source: https://chaterm.ai/docs/contributing This snippet demonstrates how to fork the Chaterm repository, clone your fork to your local machine, and navigate into the project directory using Git and Bash commands. Ensure you replace 'YOUR_USERNAME' with your actual GitHub username. ```bash # Fork the repository on GitHub, then clone your fork git clone https://github.com/YOUR_USERNAME/Chaterm.git cd Chaterm ``` -------------------------------- ### Conventional Commit Messages - Text Source: https://chaterm.ai/docs/contributing This example illustrates the conventional commit message format recommended for the Chaterm project. This format helps in automatically generating changelogs and understanding the nature of commits at a glance. ```text feat: add new feature fix: fix bug in component docs: update README refactor: improve code structure test: add unit tests ``` -------------------------------- ### Configure Local MCP Server (stdio) in Chaterm Source: https://chaterm.ai/docs/mcp/usage Example JSON configuration for adding a local MCP server using the STDIO transport type in Chaterm. This specifies the command and arguments to launch the server process. ```json { "mcpServers": { "filesystem": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-filesystem", "/Users/username/Desktop", "/path/to/other/allowed/dir" ] } } } ``` -------------------------------- ### Run AppImage for Chaterm on Linux Source: https://chaterm.ai/docs/start/downloads Allows running Chaterm on any Linux distribution without installation using an AppImage file. This method requires granting execute permissions before running the application. ```bash chmod +x chaterm-*.AppImage ./chaterm-*.AppImage ``` -------------------------------- ### Install Debian/Ubuntu Package for Chaterm Source: https://chaterm.ai/docs/start/downloads Installs the Chaterm application on Debian, Ubuntu, and other Debian-based Linux distributions using a .deb package. This method provides system integration and command-line tools. ```bash sudo apt install ./chaterm-*.deb ``` -------------------------------- ### Keyword Highlighting Configuration (YAML) Source: https://chaterm.ai/docs/settings/extensions Example YAML configuration for Chaterm AI's keyword highlighting. It defines patterns for highlighting text, specifying colors, bold attributes, and optional descriptions. This allows for flexible customization of terminal output. ```yaml # Keyword highlighting configuration example - pattern: "ERROR|FATAL" color: "#ff0000" bold: true - pattern: "\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}" color: "#00ff00" description: "IP address highlighting" - pattern: "WARN|WARNING" color: "#ffaa00" bold: true ``` -------------------------------- ### Code Quality Checks - Bash Source: https://chaterm.ai/docs/contributing This set of Bash commands executes various code quality checks and build processes for the Chaterm project. It includes formatting, linting, type checking, testing, and building the application. ```bash # Format code npm run format # Check for code issues npm run lint # Type checking npm run typecheck # Run tests npm run test # Build verification npm run build ``` -------------------------------- ### Pull Request Template - Markdown Source: https://chaterm.ai/docs/contributing This markdown template outlines the structure and content expected for a Pull Request (PR) submitted to the Chaterm project. It includes sections for description, type of change, testing, and a checklist to ensure all requirements are met. ```markdown ## Description Brief description of the changes ## Type of Change - [ ] Bug fix - [ ] New feature - [ ] Breaking change - [ ] Documentation update ## Testing - [ ] Local tests passed - [ ] Manual testing completed - [ ] Screenshots (for UI changes) ## Checklist - [ ] Code follows style guide - [ ] Self-review completed - [ ] Documentation updated - [ ] No breaking changes ``` -------------------------------- ### Configure Remote MCP Server (HTTP) in Chaterm Source: https://chaterm.ai/docs/mcp/usage Example JSON configuration for adding a remote MCP server using the HTTP transport type in Chaterm. This includes the server URL and necessary headers for authentication. ```json { "mcpServers": { "context7": { "url": "https://mcp.context7.com/mcp", "headers": { "CONTEXT7_API_KEY": "your-api-key" }, "disabled": false } } } ```