TL;DR

  • Claude Code is a command-line tool that does everything Cowork does, and more. It runs on Linux, Mac, and Windows.

  • Install it with npm install -g @anthropic-ai/claude-code (use nvm so you do not need sudo).

  • Create a CLAUDE.md file at the root of your workspace. This replaces the "Global Instructions" from Cowork. Claude reads it automatically every session.

  • Set up git for version control. Claude handles the commits for you. Safety net built in.

I was trying to set up network storage between my Windows laptop and my Linux server. SSH worked fine. That part was simple. But the moment I needed something more, like shared folders or a NAS, it became a nightmare. Permissions not working. Protocols conflicting. Documentation sending me in circles.

I had been dealing with this kind of friction on Windows for a while. The small things that add up. I asked Claude for help, and Claude told me something I did not expect: on Linux, that is one command.

I had been thinking about switching to Linux on my main machine for a couple of months. I was already running it on two other computers. But I kept telling myself I needed Windows. Power BI. SQL Server. Visual Studio. The Microsoft stack was my professional toolkit.

That network storage problem was the last straw. I backed up everything and switched that day.

And what I found on the other side changed how I work.

The road to GNU/Linux

I did not arrive at Linux overnight. It started with a Chromebook.

I had this Chromebook sitting around and I wanted to turn it into a home server. ChromeOS has a thing called Crostini that gives you a Linux terminal, but it is sandboxed. You are not getting the full power of a real Linux machine. I wanted the whole thing. Full access, full control.

So I looked into Linux distros and found Ultramarine Linux. Ultramarine is based on Fedora. What I liked about it is that it comes with everything out of the box. Codecs, drivers, a polished desktop. You install it and it just works. No spending hours configuring things after the install. For someone coming from Windows, that matters.

I flashed Ultramarine on the Chromebook. It worked. I tested it for a few weeks. Turns out a Chromebook does not have enough power or storage to run the applications I wanted. The processor was too weak, and the storage was tiny. I needed something with more juice.

So I bought a used Dell OptiPlex 7040. Small form factor, more RAM, more storage, an actual processor that can handle things. Installed the same Ultramarine Linux on it and set it up as my home server. That was a couple of months ago. I connected it to my network, set up Tailscale for remote access, and started running self-hosted services on it.

Now I had two machines on Linux. But my main laptop, a ThinkPad X1 Carbon, was still on Windows. I kept it that way because I genuinely thought I needed Windows to do my job. Power BI, SQL Server, SSIS, SSRS, Visual Studio. That is the Microsoft data stack, and it is what I have professional experience with.

But small pains started adding up. I wanted to SSH into my servers from Windows and do something beyond a basic terminal session. Like setting up network-attached storage. Shared folders between machines. On Linux, this stuff is straightforward. On Windows, connecting to a Linux server for file sharing was close to impossible. I spent hours on it. Nothing worked properly.

I asked Claude. Claude told me: on Linux, you would use one command. That is it.

I immediately started backing up my files. Wiped Windows. Installed Ultramarine Linux on my ThinkPad, this time the KDE Plasma edition, which is their flagship desktop. It comes with more applications preinstalled and a more polished experience than the lighter XFCE version I had on my Chromebook and OptiPlex.

Three machines. All Linux. No more Windows.

Am I limited now?

This was the first question I asked Claude after the switch. I am a data analyst. My professional experience is with the Microsoft stack. Does running Linux mean I cannot deliver complete BI solutions?

The answer is no. And this surprised me.

All the tools I need have alternatives that run on Linux. Some are native and fully open source, like PostgreSQL instead of SQL Server, DBeaver as a database GUI, Apache Superset instead of Power BI. Others are available as webapps or cloud services, like Power BI in the browser or Azure Data Studio. And as an absolute last resort, you can run a virtual machine with Windows inside Linux for the rare occasion when nothing else works.

I am not limited. I just did not know what was available. The Microsoft ecosystem is so dominant in the BI world that I never looked at what else existed. When I asked Claude, it laid out every option. Native open source, hybrid solutions, cloud alternatives. The tools are there. I had just never seen them because I never needed to look.

How I found Claude

I have to give credit where it is due. I started using Claude because of Ruben Hassid and his newsletter, How to AI.

He wrote a post called "I Am Just a Text File" about creating a voice profile for Claude. The idea is simple: you document how you think, how you write, what you care about, and what you never want to see in your writing. You save it as a markdown file. Then Claude reads it before every task and actually writes like you, not like a generic template.

I tried it. It works. Claude knows how I write now. It knows I do not use em dashes. It knows I close with if-statements, never commands. It knows that when I say "I am" five times in a paragraph, that is intentional. It is my voice, not a mistake to smooth out.

If you are using ChatGPT and the results still feel robotic, this might be why. You have not told the AI who you are.

Then Ruben wrote another guide about Claude Cowork. Cowork is a feature in the Claude desktop app. You point Claude at a folder on your computer. It reads your files, follows your instructions, and works alongside you inside your own file system. Not just chatting in a window. Actually reading, editing, and creating files on your machine.

The folder structure Ruben describes is simple and effective: an about-me folder with your identity and writing preferences, a templates folder with reusable structures, a projects folder with your active work, and an outputs folder where Claude delivers finished work. You set up global instructions that tell Claude to always read your context before starting any task.

I wanted that. I wanted Claude living inside my workspace, not trapped in a chat window.

One problem. I was already on Linux. The Claude desktop app only runs on macOS and Windows. There is no Linux version.

Claude Code

I asked Claude what to do. This is the part of the story I enjoy the most.

Claude told me: use Claude Code. It is a command-line tool that runs directly in your terminal. It does everything Cowork does. And actually, it does more.

I did download the Claude desktop app on my wife's Windows PC so she could use Cowork there. I have seen both sides. Claude Code from the terminal is better.

Here is the thing about Claude Code that most people do not realize. It was not built as a lesser version of the desktop app. It was built for people who work in the terminal. It can read files, write files, create folders, run shell commands, edit code, commit to git, and follow complex instructions from a markdown file. The same workflow Ruben describes for Cowork works entirely from the command line. With more control, more speed, and more flexibility.

The AI itself recommended its own terminal version. I found that telling.

Setting it up

The install is straightforward, but there is one thing that will trip you up if you do not know about it ahead of time.

Claude Code is installed through npm, which is the package manager that comes with Node.js. If you have never used any of these tools, here is the full sequence. I am spelling it out because I wish someone had done this for me.

Step 1: Install nvm

nvm stands for Node Version Manager. It lets you install Node.js under your own user account instead of system-wide. This matters more than you think. If you install Node.js globally with sudo, then Claude Code will need sudo for every single command. That is annoying, unnecessary, and goes against how Linux is meant to work.

Open your terminal and run:

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash

Close your terminal and open a new one so the changes take effect.

Step 2: Install Node.js

nvm install --lts

This installs the latest long-term support version of Node.js. npm comes bundled with it, so you do not need to install it separately.

Step 3: Install Claude Code

npm install -g @anthropic-ai/claude-code

No sudo. Everything runs under your user. That is it.

Step 4: Start using it

Navigate to whatever folder you want Claude to work in and type:

claude

Claude Code starts, reads your files, and you are in. First time it runs, it will ask you to log in with your Anthropic account. You need a Claude Pro subscription ($20/month). That is the only cost.

If you already tried installing Claude Code with sudo and it keeps asking for root permissions, uninstall it first (sudo npm uninstall -g @anthropic-ai/claude-code), set up nvm as described above, and reinstall without sudo. It is worth the ten minutes to do it right.

Building the workspace

I used Ruben's Cowork folder structure as my starting template. Then I adapted it for my own needs with Claude Code's help.

Here is what my workspace looks like:

claude-workspace/
├── CLAUDE.md
├── about-me/
├── projects/
├── templates/
├── inputs/
└── outputs/

The CLAUDE.md file

The most important file in this whole setup is CLAUDE.md at the root of your workspace. This is the file Claude Code reads automatically every time you start a session. It is your global instructions. Your operating manual for Claude. Think of it as the settings panel from Cowork, except you write it yourself in plain text and you control every word.

Here is what goes in mine:

What to read first. I tell Claude to read my about-me folder before starting any task, and to check the relevant project folder before working on anything specific. This gives Claude full context about who I am and what we are working on.

What folders it can edit. This is where I diverged from Ruben's original setup. In Cowork, Claude writes to an output folder by default. I changed this. Claude Code can edit files anywhere in my workspace, but only with my explicit authorization on every single change. I approve or reject each edit as it happens. Claude shows me what it wants to change, and I say yes or no.

How to write. My voice rules, my hard nos, my formatting preferences. Claude knows not to use em dashes. It knows not to command the reader. It knows not to perform enthusiasm. All of this is in my CLAUDE.md, and Claude follows it.

What to never do. Never delete files. Never invent context that is not in my files. Never fill gaps with assumptions. If the brief is unclear, ask me first.

The fact that CLAUDE.md is a plain text file you own and control is one of the things that makes Claude Code more powerful than Cowork. You are not limited to a settings panel with predefined fields. You can write anything. Complex conditional rules, project-specific protocols, references to other files. It is as detailed as you want it to be.

Git as a safety net

One thing I added that is not in Ruben's guide: version control with git.

Because Claude Code can edit any file in my workspace, I wanted a way to undo changes if something went wrong. Git tracks every change to every file. If Claude modifies something I did not want modified, I can see exactly what changed and roll it back with one command.

I am not a git expert. I know the basics, but I have never used it professionally in a team. So I asked Claude how to set it up and how to follow best practices. Now Claude handles the whole workflow: it stages the changes, writes descriptive commit messages explaining what it did and why, and pushes to the repository. All the conventions, all the best practices, done for me.

Git turned out to be one of the most useful parts of this entire setup. Not because Claude breaks things (it asks before every change), but because having a complete history of every edit gives me the confidence to let Claude do more. I can always go back. That changes everything about how freely you can work.

The moment it clicked

This is the part where I felt like a wizard.

Over the course of my first few weeks using Claude, I had accumulated a handful of files. One about how I talk. One about my background. One about my LinkedIn profile. One about my projects. One with my rules and instructions. Plus two or three files full of raw data I had extracted from previous Claude conversations.

Here is how I extracted that data: I found a prompt on the Anthropic website that was designed to pull your personal context out of other AI services. I repurposed it. Instead of extracting data from ChatGPT or another tool, I used it on my own Claude conversations. I had long chats about two different projects, full of details, decisions, and context. The prompt pulled all of that into a markdown file. But the file was a mess. Project documentation mixed with personal information mixed with random instructions, all in one place.

In total, I had about eight files with overlapping, duplicated, and disorganized information. The same thing about my work experience appeared in three different files. My writing rules were buried inside project documentation. Context about one project was scattered across multiple files alongside completely unrelated content.

I put all of these files in a folder. Opened Claude Code. And said: read all of these files, understand what is in each one, and organize the information.

But before it started, I told Claude to ask me questions first. I wanted us to agree on the structure before anything moved.

Claude asked me how I wanted the folders organized. What projects I had. What the priority was. What information I wanted to keep separate. I answered everything. We agreed on a plan.

Then Claude went to work.

It read every file. It identified what was duplicated and kept one clean version. It separated personal information from project documentation from writing instructions from career strategy. It created over ten new files. One for each project with all the relevant context, documentation, tasks, and references. One for my identity. One for my voice and writing rules. One for my career strategy. Each file went into its own folder within the structure we agreed on.

I had to authorize each change. Claude would show me what it wanted to create or move, and I would approve or adjust. It was a conversation. Not a one-click automation, but a back-and-forth where I stayed in control the whole time.

What would have taken me an entire afternoon of reading, copying, sorting, and rewriting took about fifteen minutes. And the result was cleaner than what I would have produced on my own, because Claude caught duplications and inconsistencies I would have missed.

That was the moment I understood what this tool actually is. It is not a chatbot. It is a collaborator that lives inside your file system and can reorganize your entire workspace while you watch.

Why it is better than the desktop app

I have seen both setups. The desktop app runs on my wife's PC. Claude Code runs on mine. Here is what stands out.

Speed. Claude Code runs in a terminal. No desktop app loading, no Electron overhead, no GUI rendering in the background. It starts instantly and runs lean.

File access with real control. In Cowork, Claude writes to a designated output folder. In Claude Code, you decide exactly what Claude can and cannot touch. You set the rules in your CLAUDE.md and you approve every change in real time. More flexibility without less safety.

Git integration. This is the big one. Claude Code works with git natively. It commits changes, writes descriptive messages, pushes to your repository. If anything goes wrong, you roll it back. Cowork does not have version control. For anyone who cares about not losing work, this alone justifies the switch.

Runs on anything. Linux, macOS, Windows. Any machine with a terminal and Node.js installed can run Claude Code. You are not dependent on a desktop app being available for your operating system. No app store, no installer, no compatibility issues.

It is the same Claude. Same intelligence, same capabilities, same subscription. The only difference is the interface. A terminal instead of a window. Everything else is the same or better.

Give it a try

There have been a lot of layoffs lately. Everywhere. I want to believe some of that is because people are not harnessing the tools that are right in front of them. Not just for generating images or writing social media posts. For working with data. For pulling insights out of messy information. For organizing projects and documentation and making sense of it all.

The way to learn AI is not by reading about it. It is by using it. Installing it. Testing things. Asking it questions. Writing with it. Seeing what it can do with your data, your files, your actual work. Not just the chat. The workspace. The file system. The tools.

If you are on Linux and you thought you were locked out of Claude's best features, you are not. If you are on Windows or Mac and you want more control than the desktop app gives you, Claude Code is there too.

One install, one command, and you are in.

Keep Reading