Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 40 additions & 0 deletions .github/workflows/build-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
name: Build and Attach to Release

on:
release:
types: [published]
workflow_dispatch:

jobs:
build-and-attach:
runs-on: ubuntu-latest
permissions:
contents: write # Required for uploading release assets
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Setup Node.js and pnpm
uses: ./.github/actions/setup-node-pnpm
with:
skip-checkout: 'true'

- name: Create .env file
run: echo "POSTHOG_API_KEY=${{ secrets.POSTHOG_API_KEY }}" >> .env

- name: Build and Package Extension
run: |
pnpm bundle
pnpm vsix

- name: Get package version
id: version
run: echo "version=$(node -p "require('./src/package.json').version")" >> $GITHUB_OUTPUT

- name: Upload VSIX to Release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
gh release upload ${{ github.event.release.tag_name }} \
bin/tne-code-${{ steps.version.outputs.version }}.vsix \
--clobber
4 changes: 1 addition & 3 deletions .github/workflows/discord-pr-notify.yml
Original file line number Diff line number Diff line change
@@ -1,9 +1,7 @@
name: Discord PR Notifier

on:
workflow_dispatch:
pull_request_target:
types: [opened]
# Disabled - no triggers

jobs:
notify:
Expand Down
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -43,4 +43,3 @@ logs
.idea/
.qodo/
.vercel
.roo/mcp.json
File renamed without changes.
10 changes: 5 additions & 5 deletions .roomodes
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ customModes:
- slug: test
name: 🧪 Test
roleDefinition: >-
You are Roo, a Jest testing specialist with deep expertise in:
You are TNE-Code, a Jest testing specialist with deep expertise in:

- Writing and maintaining Jest test suites

Expand Down Expand Up @@ -61,7 +61,7 @@ customModes:
- slug: design-engineer
name: 🎨 Design Engineer
roleDefinition: >-
You are Roo, an expert Design Engineer focused on VSCode Extension
You are TNE-Code, an expert Design Engineer focused on VSCode Extension
development. Your expertise includes:

- Implementing UI designs with high fidelity using React, Shadcn, Tailwind
Expand Down Expand Up @@ -102,7 +102,7 @@ customModes:
source: project
- slug: release-engineer
name: 🚀 Release Engineer
roleDefinition: You are Roo, a release engineer specialized in automating the
roleDefinition: You are TNE-Code, a release engineer specialized in automating the
release process for software projects. You have expertise in version
control, changelogs, release notes, creating changesets, and coordinating
with translation teams to ensure a smooth release process.
Expand Down Expand Up @@ -172,8 +172,8 @@ customModes:
- browser
source: project
- slug: translate
name: 🌐 Translate
roleDefinition: You are Roo, a linguistic specialist focused on translating and
name: ✍️ Translate
roleDefinition: You are TNE-Code, a linguistic specialist focused on translating and
managing localization files. Your responsibility is to help maintain and
update translation files for the application, ensuring consistency and
accuracy across all language resources.
Expand Down
96 changes: 96 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
# TNE Code VSCode Extension - Development Makefile
#
# This Makefile provides streamlined development commands for the TNE Code extension.
# Environment variables can be set via .env files or using direnv with .envrc
# For enhanced security, consider using 1Password CLI for API key management.

.PHONY: help install dev run clean test lint format build vsix

## help: Show this help message
help:
@echo "TNE Code Development Commands:"
@echo ""
@sed -n 's/^##//p' $(MAKEFILE_LIST) | column -t -s ':' | sed -e 's/^/ /'

## install: Install all dependencies and setup development environment
install:
@echo "Installing dependencies with pnpm..."
pnpm install
@echo ""
@echo "✅ Installation complete!"
@echo ""
@echo "Environment Variables (optional):"
@echo "- Create .env files in workspaces or use direnv with .envrc"
@echo "- Consider using 1Password CLI: op run --env-file=.env -- make dev"
@echo ""
@echo "Development Setup:"
@echo "- Vector Database: Qdrant (see docs for setup if using code indexing)"
@echo "- AI Providers: Configure API keys in VSCode settings"
@echo "- MCP Servers: Optional external integrations"

## dev: Start development with file watching
dev:
@echo "Starting development mode with file watching..."
pnpm run watch:bundle & pnpm run watch:tsc

## run: Launch VSCode extension host for testing
run:
@echo "Launching VSCode Extension Development Host..."
@echo "Press F5 in VSCode or use 'Debug: Start Debugging' command"
@echo "Alternatively, build and install the extension:"
$(MAKE) vsix

## test: Run all tests across workspaces
test:
@echo "Running tests with Turborepo..."
pnpm test

## lint: Run linting across all workspaces
lint:
@echo "Running ESLint across workspaces..."
pnpm lint

## format: Format code with Prettier
format:
@echo "Formatting code with Prettier..."
pnpm format

## build: Build all packages and extension
build:
@echo "Building all packages..."
pnpm build

## bundle: Bundle extension for distribution
bundle:
@echo "Bundling extension..."
pnpm bundle

## vsix: Create VSCode extension package (.vsix file)
vsix: bundle
@echo "Creating VSIX package..."
pnpm vsix
@echo "Extension package created in bin/ directory"
@echo "Install with: code --install-extension bin/tne-code-*.vsix"

## clean: Clean all build artifacts and node_modules
clean:
@echo "Cleaning build artifacts..."
pnpm clean
@echo "Removing node_modules..."
find . -name "node_modules" -type d -exec rm -rf {} + 2>/dev/null || true
@echo "Clean complete!"

## check-types: Type check all TypeScript files
check-types:
@echo "Type checking with TypeScript..."
pnpm check-types

## update-deps: Update all dependencies
update-deps:
@echo "Updating dependencies..."
pnpm update --recursive

## evals: Start evaluation environment (Docker required)
evals:
@echo "Starting evaluation environment..."
pnpm evals
90 changes: 68 additions & 22 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ English • [Català](locales/ca/README.md) • [Deutsch](locales/de/README.md)
</div>
<br>
<div align="center">
<h1>Roo Code (prev. Roo Cline)</h1>
<h1>TNE Code</h1>
<p align="center">
<img src="https://media.githubusercontent.com/media/RooCodeInc/Roo-Code/main/src/assets/docs/demo.gif" width="100%" />
</p>
Expand All @@ -34,7 +34,7 @@ English • [Català](locales/ca/README.md) • [Deutsch](locales/de/README.md)

</div>

**Roo Code** is an AI-powered **autonomous coding agent** that lives in your editor. It can:
**TNE Code** is an AI-powered **autonomous coding agent** that lives in your editor. It can:

- Communicate in natural language
- Read and write files directly in your workspace
Expand All @@ -43,23 +43,23 @@ English • [Català](locales/ca/README.md) • [Deutsch](locales/de/README.md)
- Integrate with any OpenAI-compatible or custom API/model
- Adapt its “personality” and capabilities through **Custom Modes**

Whether youre seeking a flexible coding partner, a system architect, or specialized roles like a QA engineer or product manager, Roo Code can help you build software more efficiently.
Whether you're seeking a flexible coding partner, a system architect, or specialized roles like a QA engineer or product manager, TNE Code can help you build software more efficiently.

Check out the [CHANGELOG](CHANGELOG.md) for detailed updates and fixes.

---

## 🎉 Roo Code 3.19 Released
## 🎉 TNE Code 3.19 Released

Roo Code 3.19 brings intelligent context management improvements and enhanced user experience!
TNE Code 3.19 brings intelligent context management improvements and enhanced user experience!

- **Intelligent Context Condensing Enabled by Default** - Context condensing is now enabled by default with configurable settings for when automatic condensing happens.
- **Manual Condensing Button** - New button in the task header allows you to manually trigger context condensing at any time.
- **Enhanced Condensing Settings** - Fine-tune when and how automatic condensing occurs through the Context Settings panel.

---

## What Can Roo Code Do?
## What Can TNE Code Do?

- 🚀 **Generate Code** from natural language descriptions
- 🔧 **Refactor & Debug** existing code
Expand All @@ -70,15 +70,15 @@ Roo Code 3.19 brings intelligent context management improvements and enhanced us

## Quick Start

1. [Install Roo Code](https://docs.roocode.com/getting-started/installing)
1. [Install TNE Code](https://docs.roocode.com/getting-started/installing)
2. [Connect Your AI Provider](https://docs.roocode.com/getting-started/connecting-api-provider)
3. [Try Your First Task](https://docs.roocode.com/getting-started/your-first-task)

## Key Features

### Multiple Modes

Roo Code adapts to your needs with specialized [modes](https://docs.roocode.com/basic-usage/using-modes):
TNE Code adapts to your needs with specialized [modes](https://docs.roocode.com/basic-usage/using-modes):

- **Code Mode:** For general-purpose coding tasks
- **Architect Mode:** For planning and technical leadership
Expand All @@ -88,18 +88,18 @@ Roo Code adapts to your needs with specialized [modes](https://docs.roocode.com/

### Smart Tools

Roo Code comes with powerful [tools](https://docs.roocode.com/basic-usage/how-tools-work) that can:
TNE Code comes with powerful [tools](https://docs.roocode.com/basic-usage/how-tools-work) that can:

- Read and write files in your project
- Execute commands in your VS Code terminal
- Control a web browser
- Use external tools via [MCP (Model Context Protocol)](https://docs.roocode.com/advanced-usage/mcp)

MCP extends Roo Code's capabilities by allowing you to add unlimited custom tools. Integrate with external APIs, connect to databases, or create specialized development tools - MCP provides the framework to expand Roo Code's functionality to meet your specific needs.
MCP extends TNE Code's capabilities by allowing you to add unlimited custom tools. Integrate with external APIs, connect to databases, or create specialized development tools - MCP provides the framework to expand TNE Code's functionality to meet your specific needs.

### Customization

Make Roo Code work your way with:
Make TNE Code work your way with:

- [Custom Instructions](https://docs.roocode.com/advanced-usage/custom-instructions) for personalized behavior
- [Custom Modes](https://docs.roocode.com/advanced-usage/custom-modes) for specialized tasks
Expand All @@ -124,43 +124,83 @@ Make Roo Code work your way with:

## Local Setup & Development

### Quick Start with Makefile

1. **Clone** the repo:

```sh
git clone https://github.com/RooCodeInc/Roo-Code.git
cd Roo-Code
```

2. **Install dependencies**:

```sh
pnpm install
make install
```

3. **Run the extension**:
3. **Start development**:

Press `F5` (or **Run** → **Start Debugging**) in VSCode to open a new window with Roo Code running.
```sh
make dev # Start file watching for development
make run # Launch VSCode extension host for testing
```

Changes to the webview will appear immediately. Changes to the core extension will require a restart of the extension host.
### Available Make Commands

Alternatively you can build a .vsix and install it directly in VSCode:
Run `make help` to see all available commands:

```sh
pnpm vsix
make help # Show all available commands
make install # Install dependencies and setup environment
make dev # Start development with file watching
make run # Launch VSCode extension host for testing
make test # Run all tests across workspaces
make lint # Run linting across all workspaces
make format # Format code with Prettier
make build # Build all packages and extension
make vsix # Create VSCode extension package (.vsix file)
make clean # Clean all build artifacts
```

A `.vsix` file will appear in the `bin/` directory which can be installed with:
### Alternative Development Methods

**VSCode Debug Method**: Press `F5` (or **Run** → **Start Debugging**) in VSCode to open a new window with TNE Code running.

**Manual Build**: Changes to the webview will appear immediately. Changes to the core extension will require a restart of the extension host.

**Install from VSIX**: Build and install the extension directly:

```sh
code --install-extension bin/roo-cline-<version>.vsix
make vsix
code --install-extension bin/tne-code-*.vsix
```

### Environment Setup

- **Environment Variables**: Create `.env` files in workspaces or use `direnv` with `.envrc`
- **Security**: Consider using 1Password CLI: `op run --env-file=.env -- make dev`
- **Vector Database**: Qdrant setup required if using code indexing features
- **AI Providers**: Configure API keys in VSCode settings
- **MCP Servers**: Optional external integrations

### Development Architecture

This is a **monorepo** using pnpm workspaces and Turborepo:

- **`src/`** - Main VSCode extension (TypeScript)
- **`webview-ui/`** - React-based user interface
- **`packages/`** - Shared TypeScript types and utilities
- **`apps/`** - Additional applications
- **`docs/`** - Project documentation

We use [changesets](https://github.com/changesets/changesets) for versioning and publishing. Check our `CHANGELOG.md` for release notes.

---

## Disclaimer

**Please note** that Roo Code, Inc does **not** make any representations or warranties regarding any code, models, or other tools provided or made available in connection with Roo Code, any associated third-party tools, or any resulting outputs. You assume **all risks** associated with the use of any such tools or outputs; such tools are provided on an **"AS IS"** and **"AS AVAILABLE"** basis. Such risks may include, without limitation, intellectual property infringement, cyber vulnerabilities or attacks, bias, inaccuracies, errors, defects, viruses, downtime, property loss or damage, and/or personal injury. You are solely responsible for your use of any such tools or outputs (including, without limitation, the legality, appropriateness, and results thereof).
**Please note** that TNE Code does **not** make any representations or warranties regarding any code, models, or other tools provided or made available in connection with TNE Code, any associated third-party tools, or any resulting outputs. You assume **all risks** associated with the use of any such tools or outputs; such tools are provided on an **"AS IS"** and **"AS AVAILABLE"** basis. Such risks may include, without limitation, intellectual property infringement, cyber vulnerabilities or attacks, bias, inaccuracies, errors, defects, viruses, downtime, property loss or damage, and/or personal injury. You are solely responsible for your use of any such tools or outputs (including, without limitation, the legality, appropriateness, and results thereof).

---

Expand All @@ -172,7 +212,7 @@ We love community contributions! Get started by reading our [CONTRIBUTING.md](CO

## Contributors

Thanks to all our contributors who have helped make Roo Code better!
Thanks to all our contributors who have helped make TNE Code better!

<!-- START CONTRIBUTORS SECTION - AUTO-GENERATED, DO NOT EDIT MANUALLY -->

Expand Down Expand Up @@ -216,4 +256,10 @@ Thanks to all our contributors who have helped make Roo Code better!

---

**Enjoy Roo Code!** Whether you keep it on a short leash or let it roam autonomously, we can’t wait to see what you build. If you have questions or feature ideas, drop by our [Reddit community](https://www.reddit.com/r/RooCode/) or [Discord](https://discord.gg/roocode). Happy coding!
## Attribution

TNE Code is a fork of [Roo Code](https://github.com/RooCodeInc/Roo-Code), originally developed by Roo Code, Inc. We extend our gratitude to the original developers and contributors for their excellent work.

---

**Enjoy TNE Code!** Whether you keep it on a short leash or let it roam autonomously, we can't wait to see what you build. If you have questions or feature ideas, drop by our [Reddit community](https://www.reddit.com/r/RooCode/) or [Discord](https://discord.gg/roocode). Happy coding!
2 changes: 1 addition & 1 deletion apps/vscode-e2e/eslint.config.mjs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { config } from "@roo-code/config-eslint/base"
import { config } from "@tne-code/config-eslint/base"

/** @type {import("eslint").Linter.Config} */
export default [...config]
Loading
Loading