Skip to main content
Photo of DeepakNess DeepakNess

Raw notes

Raw notes include useful resources, incomplete thoughts, ideas, micro thoughts, and learnings as I go about my day. Below, you can also subscribe to the RSS feed to stay updated:

https://deepakness.com/feed/raw.xml

Total Notes: 270


Are LLMs AI?

Came across this post from Simon Willison where says that:

I often encounter people who firmly believe that "LLMs aren't actually AI"... do those people think there exists technology today that DOES count as AI?

I think, LLMs are nothing but AI. And I even replied to the post with the following:

Depends on how we define intelligence.

A lot of human intelligence is just predicting what comes next – which is exactly what LLMs do.

So yes, I think, LLMs are AI.


Remote FileVault unlock in macOS Tahoe 26

macOS 26 adds a super handy backend change: you can unlock FileVault over SSH before the system fully boots. That means real lights-out access for studio machines.

What it enables

  • Limited SSH runs at pre-boot. Log in with the Mac’s local username and password to unlock FileVault, then the system finishes booting.
  • After unlock, normal SSH and Screen Sharing work.

How to set it up

  1. Turn on FileVault.
  2. System Settings → General → Sharing → turn on "Remote Login" (SSH).
  3. Reach the Mac over the same network or your own VPN – this is not a public-internet thing.

Flow

  • After a reboot, the Mac waits at the login screen.
  • From another Mac: SSH to it → enter the local creds → disk unlocks → full boot → Screen Sharing connects.

Wi-Fi didn't work but plugging into Ethernet made it work reliably.


Enable bash/shell mode in AI CLI coding tools

From this post by Ian Nuttall on X, I just learned that typing ! in most of the AI coding CLI tools like Claude Code and Codex enables you to write bash/shell commands without requiring you to open another terminal for the same.

In fact, I thought this multiple time that there must be a way to quickly run the bash commands in the same terminal window. And turns out, there's already a solution for this. Wow.

Apart from this, I also learned that typing # and writing something can quickly add it in the CLAUDE.md file.


Ussing Tailwind CSS child selectors

When using Tailwind CSS, the both below code snippets for an HTML table show the same thing... but the second one looks cleaner here. It's called using Child Selectors in Tailwind CSS as being discussed in this thread on X.

<table>
  <tr>
    <td className="px-3 py-2">CSS</td>
    <td className="px-3 py-2">Great</td>
  </tr>
  <tr>
    <td className="px-3 py-2">Tailwind</td>
    <td className="px-3 py-2">Fine</td>
  </tr>
</table>
<table className="[&_td]:px-3 [&_td]:py-2">
  <tr>
    <td>CSS</td>
    <td>Great</td>
  </tr>
  <tr>
    <td>Tailwind</td>
    <td>Fine</td>
  </tr>
</table>

And I liked the Child Selectors approach because I don't have to repeat the same classes again and again. However, some people do not like this at all and you'll find that in the X thread I linked above as well.


From Anthropic to Claude branding

Alex Albert, Claude Relations at Anthropic AI, has announced on X that they will be "unifying all of their developer offerings under the Claude brand", and it's definitely for the better.

So now people will not have to use sentences like "using Claude models via Anthropic API" and can just use "using models via Claude API" as it's less confusing. A few people mention the same thing, and it does make more sense to not having to use Anthropic all the time.

And they have explained what's changing in their docs as well:

  • Anthropic Console (console.anthropic.com) → Claude Console (platform.claude.com). The console will be available at both URLs until December 16, 2025. After that date, console.anthropic.com will automatically redirect to platform.claude.com.
  • Anthropic Docs (docs.claude.com) → Claude Docs (docs.claude.com)
  • Anthropic Help Center (support.claude.com) → Claude Help Center (support.claude.com)
  • API endpoints, headers, environment variables, and SDKs remain the same. Your existing integrations will continue working without any changes.

I think, it was long a due change.


Fixing layout shift in Next.js + MDX

The CLS or Cumulative Layout Shift is an SEO factor now and having your website not have any kind of layout shift is a big deal now. I came across this video from Lee Robinson where he explained a trick on fixing the layout shift. It's a quick 5-min video which can be very helpful for my future projects.


Forcefully update open graph images for X (Twitter)

For my Omarchy Hub project, I changed my open graph image but X/Twitter was still showing the old image for days. I changed the image filename, tried using Bitly short links, cleared all build cache, but nothing worked.

I followed the steps explained in this troubleshooting cards page, they recommended adding a random parameter, something like ?4362984378, at the end of my open graph image URL, but it didn't work either.

<meta name="twitter:image" content="http://example.com/myimage.jpg?4362984378"></meta>

Then what worked?

I discovered that adding a random query parameter at the end of the URL, that you're going to share on X, works perfectly. X treats this as a new URL and re-fetches the card image. For example, you can add something like ?test=1 like below example, or whatever random query parameter you like. And then share this URL on X.

https://omarchy.deepakness.com/setups?test=1

But don't worry, adding the query parameter isn't going to break the URL or affect the content shown on the page. It's perfectly safe to use this.


Claude brings web fetch tool to the API

Now, you can search live on the internet when using the Claude API, because Anthropic has brought the new web fetch tool which can search for relevant information online, in the background, and then return the output.

The web fetch tool is currently in beta. To enable it, use the beta header web-fetch-2025-09-10 in your API requests.

And here's the example code provided that you can use to use the web-fetch tool:

curl https://api.anthropic.com/v1/messages \
    --header "x-api-key: $ANTHROPIC_API_KEY" \
    --header "anthropic-version: 2023-06-01" \
    --header "anthropic-beta: web-fetch-2025-09-10" \
    --header "content-type: application/json" \
    --data '{
        "model": "claude-opus-4-1-20250805",
        "max_tokens": 1024,
        "messages": [
            {
                "role": "user",
                "content": "Please analyze the content at https://example.com/article"
            }
        ],
        "tools": [{
            "type": "web_fetch_20250910",
            "name": "web_fetch",
            "max_uses": 5
        }]
    }'

You have to pass the web-fetch in the API request and it works in the background and gives you the output, as you can see in the example above.


x402-mcp: Open protocol for mcp payments

Came across this post on X, where Vercel launched x402 which helps you build paid MCP tools, as you can try out in the demo here. It's explained as:

x402 is an open protocol that addresses this by adding payment directly into HTTP requests. It uses the 402 Payment Required status code to let any API endpoint request payment without prior account setup.

They have also created a starter which you can use to quickly build paid MCP tools.


Fix Claude Code adding 2024 to web searches

Came across a post on X that talked about fixing the issue of Claude Code adding 2024 to its web search queries, even though it's 2025 already.

So Daniel built a simple tool that fixes this, and you can install the tool by running the following command in your terminal:

npx claude-code-templates@latest --hook=pre-tool/update-search-year --yes

Here, you can find more info about the implementation. This is very helpful.


Created a resource library for Omarchy

I loved Omarchy, the new Arch-based Linux distribution created or rather popularized by DHH and couldn't help myself to create a resource website for the distro. So I created Omarchy Hub that contains setups, themes, resources, and much more information about Omarchy.

It's open-source and anyone can contribute here to make the website better.

My current flow is, whenever I see some new information about Omarchy while browsing the internet, I just take a minute to collect and add it to the website. I have multiple JSON files where I have to add the info, but AI makes the process very easy as I can just provide the URL and the screenshot, and it automatically adds a new item to the relevant JSON files.

Also, I am constantly improving the user-experience and trying to make it into an even more helpful resource library for Omarchy.


The best way to raise prices

Loved this post on X explaining how to responsibly raise your prices without driving anyone mad:

  1. Say how long it's been since prices were raised.
  2. Show how much better the product is now.
  3. Show how your costs have gone up as a result.

The post features Nathan's SaaS Kit (previously ConvertKit), the leading email marketing tools provider.


Linux is faster than macOS

Came across this post from DHH explaining Linux is way faster than macOS in real life, and to be exact over 7x faster for the below task:

curl -L https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.16.tar.xz -o linux.tar.xz
time tar -xf linux.tar.xz

Running the above command on Framework desktop, with Omarchy installed, takes around 1.6 seconds whereas it takes 12.2 seconds on MBP M4 Pro. And here is what GPT-5 explains about why there's so much speed difference.

Actually, another person ran the same tests and it was similar, Linux was way faster.


Hosting a Next.js app on a Hetzner VPS via Coolify

A quick guide to host a Next.js app on a Hetzner VPS via Coolify:

  1. Set up an Ubuntu Hetzner VPS and grab the public IP
  2. Connect to the server from your terminal via SSH
    ssh root@[IP_ADDRESS]
  3. Update and upgrade the Ubuntu server
    sudo apt update && sudo apt upgrade
  4. Install Coolify on the server by running the following command
    curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash
  5. After successful installation, visit http://[ID_ADDRESS]:8000 and register a new account
  6. Connect your private or public GitHub repo and publish your Next.js app

I have also created this step-by-step YouTube video explaining everything from creating the VPS to installing Coolify and hosting the website.


Reset Windows 11 password when you're locked out

After updating the Windows 11 OS, my sister's laptop was locked out and the existing pin and password were not working at all. We tried several things, but nothing seemed to work. In fact, we even changed the Microsoft account's password from a different device, but it still wasn't able to log in (even though the Wi-Fi was on).

But we finally got a working solution from this video (method 2), but I had to improvise at the end a bit:

  1. Boot your laptop in the Recovery Mode, I had to keep pressing F11 repeatedly after pressing the power button
  2. Click on the Troubleshoot > Advanced options > Command Prompt option which will open a new CMD window
  3. Run the following commands one-by-one in the command prompt window:
    C:
    
    cd Windows/System32
    
    ren utilman.exe utilman1.exe
    
    ren cmd.exe utilman.exe
    
    exit
  4. Then click on Continue and start the Windows 11
  5. When laptop restarts and login screen appears, click on the Accessibility button in the bottom-right area
  6. It opens the command prompt window, where you have to run the following command:
    control userpasswords2
  7. The above command opens the User Accounts window
  8. User's name should be visible, click on it, select Reset Password below and change the password
  9. Now, close everything and restart, and you should be able to log in with the new password

Most of the steps are shown in the video in the method 2 section, but I had to do it a bit differently at the end (only #8 in the above steps is different from the video).

After that I copied all my data to an external drive and reset the PC from Settings using the 'Cloud install' option. The local and cloud reinstall options in recovery mode had failed earlier – the reinstall only worked after I signed in.


Order vs chaos

Came across this post on X where this image was shared that showed "order" vs "chaos". And that hit me really hard.

Someone the post replied, "chaos is the highest form of order", and I was like 🤯.

How accurate!


aria2 download utility tool

Came to know about this aria2 download utility CLI tool which can download anything and everything from the web, even torrent files. I got to know about this from this reply to my post on X.

brew install aria2

I installed this via homebrew by running the above command, and it does seem to be working great so far.


How to add Perplexity MCP to Claude Code

Below is the command to add the Perplexity API to Claude Code:

claude mcp add perplexity -e PERPLEXITY_API_KEY={perplexity_api_here} -- npx -y perplexity-mcp

You have to replace {perplexity_api_here} with the API from Perplexity and then run the command. When you run the command, it modifies the ~/.claude.json file to add the MCP globally.

And I learned about this from this GitHub repo and this page on Anthropic docs.


Remove mistakenly pushed files from GitHub

I accidentally pushed an incomplete blog post .md file to GitHub for my personal blog, and then had to remove from GitHub without deleting it locally. So I looked it up, and this is how it's done:

  1. Remove the file from Git tracking (but keep it locally)
git rm --cached content/blog/still-brave-browser/index.md
  1. Commit the removal
git commit -m "Commit message"
  1. Push the changes to GitHub
git push origin main

Basically, the git rm --cached command removes the file from Git's tracking without deleting it from your local filesystem, so you can continue editing it.


Using Claude Code for non-coding tasks

I came across this post on X where Lenny asked how people are using Claude Code for non-coding related tasks. To which several people replied cool ways they are using it, and I couldn't help but to list some interesting use cases here:

  1. Using Ahrefs, GA4, and GSC MCPs to find high converting pages and come up with new pillars to go after. (Link)
  2. Browserbase and Apify MCPs to find videos over 100k views in the last 90 days in the niche, and plan YouTube strategy.
  3. Obsidian, Notion, and Linear MCPs to write PRDs, auto-generate wikis, projects, and issues. (Link)
  4. Using Claude Code as a doc editor for brainstorming and planning tasks. It's explained in detail here.
  5. Researching and taking notes from YouTube videos by using the Apple Notes MCP and some CLI tools for getting YouTube transcripts. Explained here.
  6. For brainstorming domain names and checking their availability by using this MCP and the process is explained here.

So cool! I will definitely be using some of these workflows.