Portrait of Hew Phipps

University of OxfordOPIG

Hew Phipps

Learning how proteins move

I'm a PhD researcher building generative models for protein folding and motion, supervised by Prof. Charlotte Deane.

I also work with biotech teams on machine learning and scientific software.

Loading the backbone trajectory
Drag to rotate · scroll to zoom
1ADE · Chain APrecomputed prediction

384 residues · 1,536 backbone atoms · 500 frames

001 / 500

HelixSheetLoopStarting conformation

What I'm working on

Beyond a single structure.

A protein's structure is only part of the story. I'm interested in models that capture how it moves.

All research

News.

I vibe-coded another plugin: Advanced customisable ::: ::: fenced blocks for displaying text with flare in Obsidian.

I will be in Seoul to present my work on spectral diffusion for protein dynamics at the ICML 2026 GenBio Workshop.

I have been invited to Roche Continents in Arles, France: a week exploring the intersection of science and the arts with students from across disciplines.

I made an Obsidian plugin for local Ollama agentic model chats within Obsidian through a neat sidebar. It’s optimised for local-first safe tool usage, agent configurations and cool things like automated internal note linking.

I wrote a new OPIG blog exploring how spin-glass models from physics have shaped modern protein modelling.

Another Obsidian Plugin: Advanced Markdown Blocks for Stylised Text Block Highlighting

I’ve already made one plugin for Obsidian (see Local Sidekick). While the latest models are relatively cheap I’m applying vibe coding to every small niche use case I can think of. Like a seasoned entrepeneur I look for any opportunity to vibe-code a solution to my highly personal. In this case I was writing up notes from a textbook, the kind with the coloured/shaded text block excerpts for things like examples. “Wouldn’t it be cool to have that in Obsidian”.

So the concept is simple, $$-like blocks that, similar to shortcode blocks defining a language for syntax highlighting, would enable quick and easy predefined block styles with colour shading, outlining and special text formats etc. - customisable too!

Advanced Markdown Blocks for Obsidian

Advancerd Markdown Blocks is an Obsidian plugin that introduces ::: ::: fenced text blocks to wrap, highlight, outline and shade text in predefined customisable formats.

Obsidian Community Store

GitHub Repo

::: becomes a new block-level semantic similar to $$ for math. Typing ::: starts a advanced markdown block allowing users to specify a default (or custom) block type in the same way as code language is specified in shortcode blocks, the result is block-specific but generally centered around stylised coloured boxing and shading of the text within.

For example:

:::definition The distribution of a random variable $X$ is the map $B \to \mathbb{P}(X \in B)$ considered on a suitable collection of subsets $B \subseteq \mathbb{R}$. :::

:::example The normal distribution is defined by its mean $\mu$ and variance $\sigma$ where

$$ f(x) = \frac{1}{\sigma\sqrt{2\pi}} \exp\left(-\frac{(x-\mu)^2}{2\sigma^2}\right) $$

is the probability density function ::: give the below among others

examples

Inside a fence you can use ordinary Obsidian Markdown, including paragraphs, lists, links, images, callouts, code, and maths. Fences can be nested.

I particularly like that ::: is tab completable pulling up a list of your blocks that allows easy tab selection with arrow keys.

Other plugins with similar markdown extension functionality exist but are either more general larger toolset offerings with more micro required to achieve the above results, or are specialised in other directions such as the Admonitions package. The emphasis for this plugin was lightweight, simple and effective customisable blocks - northing more nothing less.

Attending ICML 2026

I will be attending ICML 2026 this year in Seoul Korea where I will be presenting my new paper ‘Spectral Volume Diffusion for Protein Dynamics’ at the GenBio Workshop.

If you’re also planning to go and would like to chat about all things machine learning and biology reach out!

Roche Continents 2026

I have been invited to attend Roche Continents 2026, an interdisciplinary merger of science and the arts in the beautiful historic town of Arles, France. I’m super thankfuol to Roche for this amazing opportunity and looking forward to a week of sun and stepping out of my comfort zone.

Roche Continents is a long running summer programme hosted by Roche to explore the intersection of science and the arts, with an emphasis on leadership, innovation and new interdisciplinary skills. I was lucky enough to be one of just 40 students from different discplines and over 30 nationalities.

If you’re interested in Roche Continents check it out: https://www.roche.com/about/roche-global-citizenship/arts-and-culture/roche-continents

I made an Obsidian Plugin that turns Obsidian into a Local LLM Agent IDE

Obsidian is great, I’ve already talked about it once in a blog for my research group OPIG and I use it everyday. I’m travelling a lot this year for conferences etc. an was conscious how I could minimise agentic AI usage withdrawals without internet. Local models are finally getting to a useable point for things like coding, reasoning and tool usage. No wifi requirements and actual privacy? For want of a less hypebeast term, local agentic Obsidian second braining really seems viable now.

Also trending are agentic dashboards - a kind of custom all-in-one IDE mind palace application concept that people have been building. Honestly this is as niche and technerd as you can get, very much tracking a similar cultification evolution to Arch Linux stanning. Personally I love it. So why not blend the two: An Obsidian dashboard for agentic local llm usage.

There already exists a plugin for agentic client ACP/MCP and sidebar chat with Obsidian, we also have the popular terminal plugin available. But I want to focus on local models and optimising vault-agent compatibility, protocols and configurations. So I vibe coded it into reality. Thanks Codex for the hard work, let me now present Local Sidekick and claim the credit.

Local Sidekick

Local Sidekick is essentially just a UI sidebar which neatly adopts standard Obsidian Markdown rendering and the user theme whilst displaying an agent chat just like VScode/copilot agent sidebar chats, plus a few neat vault-agent productivity features. It has recent chat sessions, vault file searching and referencing with @ symbol, minimal tool usage (restricted by default for safety but can be customised), pdf parsing, web search, chat export and reviewed file editing etc. In other words, most of what you’d expect from your equivalent coding agent IDE. It’s all wired through Ollama and the Pi agent harness for maximum customisability so you can max it with custom prompts and skills via Pi as much as you want.

Obsidian Community Store

GitHub Repo

Please crack at it, break it, criticise it and tell me what you think. If you have any feature requests / ideas, or are interested enough to review my mostly vibe-coded js code then holla! Meanwhile, I’ll keep updating it gradually and reporting back here.

light_mode

Local Sidekick seamlessly uses your Obsidian theme for its UI, supporting dark and light mode. It can be launched from the command palette or from the small AI agent icon on the left toolbar. Doing so will open the interactive dashboard as a tab in the right hand sidebar. An agent status panel at the top of the sidebar gives real time information on the local models being used alongside interactive buttons to find local models. Below a new chat can be started from an interactive prompt box with model selection or a recent chat from session history continued.

Features

  • Local model workflow through Pi and Ollama.
  • Persistent chat sessions with a history landing page.
  • Compact model rail with discovered Pi/Ollama models and capability badges.
  • Markdown and math rendering through Obsidian’s renderer.
  • Vault file mentions with @, including Markdown, text-like files, attachments, and best-effort PDF text extraction.
  • Prompt context helpers:
    • @search(query) for local vault search.
    • @semantic(query) for lightweight related-note search.
    • @vault-index for filenames and top headings.
    • @links or @links(query) for conservative internal link suggestions.
    • @cmd(command) for exact allowlisted local commands.
    • @url(url) for optional HTTPS web fetch context from explicitly allowlisted hosts.
  • Reviewed Markdown edit proposals with visible diffs and approval before write.
  • Chat export to Markdown, defaulting to a Chats/ folder in the vault.
  • Obsidian command palette actions for opening the sidebar, exporting chats, checking Pi/Ollama, and suggesting internal links.

dark_mode

Chat session agent reply streams are rendered in markdown with your Obsidian theme, handling math and standard formatting. For a full Obsidian IDE experience, use the terminal plugin alongside this so you never have to leave Obsidian.

Sidekick also includes a plugin-native internal link suggester, available from the command palette or with @links, that proposes connections between notes without requiring Pi tool support. It builds conservative candidates from Markdown filenames and top-level headings, ranks them with local related-note search, and shows reviewed diffs before any note is changed.

New Agentic Productivity Features Introduced in v0.1.8

I built in a number of productivity features that exploit vault-agent relationship and Pi customisability for turning your vault into a persistent source of agent instructions, memory, and workflow configuration.

  • Sidekick can now create a Sidekick/ folder in the root of your vault, including template .agent.md profiles for different use cases.
  • .agent.md profiles can specify preferred local models, tool usage preferences, included memory files, and system-style instructions written directly in Markdown.
  • Agent profiles can be selected from the UI, with model choices narrowed to the models that make sense for that profile.
  • Custom prompts, vault memory, project summaries, glossaries, and other reusable context can now live as ordinary Markdown files inside the vault and be referenced with @.
  • Users can ask the agent to help generate or update profile files and memory files, making it easier to maintain things like a vault glossary or project index over time.
  • Sidekick can export selected profiles, prompts, and skills in a Pi-compatible format for use outside the plugin.

Usage

Just install via the Obsidian Ciommunity Plugins store by searching for “Local Sidekick” or if you want to isntall from source follow isntructions on the GitHub repo.

You will need Ollama, the Pi agent harness, and at least one installed Ollama models

Spin lattices and proteins

I wrote a new blog for my research group OPIG on how spin glass lattice models in Physics have enabled and continue to shape modern protein modelling. Check it out here:

https://www.blopig.com/blog/2026/05/spin-lattices-and-proteins-how-state-based-discretisations-have-enabled-modern-protein-modelling/

A small experiment

Make it yours.

Give this moving molecule a name.

Explore this precomputed example. Predictions for your own PDB ID are coming later.