Skip to content

Instantly share code, notes, and snippets.

View njtierney's full-sized avatar
👷‍♂️
Work available from January 2027

Nicholas Tierney njtierney

👷‍♂️
Work available from January 2027
View GitHub Profile
name robot
description Operate a local multi-agent development workflow built on Kata (issue/work ledger), kwt (git worktrees + tmux workspaces), Roborev (optional, operator-approved AI code review), and AgentsView (agent session history). Use when choosing or claiming work, creating a worktree for an issue, recording progress or evidence, reviewing commits, closing or abandoning work, running experiments, handing off between agents, supervising parallel worker agents, recovering after a crash, or when the user mentions kata, kwt, roborev, agentsview, /robot, "ready work", "claim", "worktree", "review loop", or "close with evidence".

Robot: local agent development control plane

Four tools by Wes McKinney / kenn.io, plus Git. There is no other database. Every piece of state comes from the system that owns it:

| Question | Authority | Look at |

library(colorspace)

our_colour <- "seagreen"

greens <- lighten(col = our_colour, amount = seq(0, 0.9, length.out = 9))

swatchplot(greens) 
desc_deps_valid <- function(path = ".") {
  r_deps <- renv::dependencies(path = path)$Package |> unique() |> sort()
  d_deps <- desc::desc_get_deps(file = path)$package |> unique() |> sort()
  waldo::compare(r_deps, d_deps)
}

desc_deps_valid()
#> Warning: "~/.Rprofile" is missing a trailing newline
#> Finding R package dependencies ... Done!
## Exploring ozbabynames error?
library(ozbabynames)
library(tidyverse)

# View(ozbabynames)

# Gives error: r error 4 (Error in nchar(col, type = "width") : invalid multibyte string, element 19070 )

# what is element 19070?
## -- your turn: help me cut this code down.
library(tidyverse)

head(diamonds)
#> # A tibble: 6 × 10
#>   carat cut       color clarity depth table price     x     y     z
#>   <dbl> <ord>     <ord> <ord>   <dbl> <dbl> <int> <dbl> <dbl> <dbl>
#> 1  0.23 Ideal     E     SI2      61.5    55   326  3.95  3.98  2.43
#> 2  0.21 Premium   E     SI1      59.8    61   326  3.89  3.84  2.31
# reprexes
# **repr**oducible
# **ex**amples

mean(airquality$Ozone)
#> [1] NA

data_raw <- read_csv("....")
#&gt; Error in `read_csv()`:
# best practices for putting functions in your script

#1. Put the function definitions at the top of the script

# water_quality_percentile_method <- function(
#   data,
#   water_column,
#   n_bacteria_ppm,
#   percentile,
library(ggplot2)
ggplot(penguins,
       aes(x = flipper_len,
           y = bill_len,
           colour = species)) + 
    geom_point() +
    # colour blind safe, and also, pretty.
    scale_colour_brewer(palette = "Dark2") +
    labs(
mean(airquality$Ozone)
#> [1] NA

Created on 2026-08-10 with reprex v2.1.1

library(dplyr)
#> 
#> Attaching package: 'dplyr'
#> The following objects are masked from 'package:stats':
#> 
#>     filter, lag
#> The following objects are masked from 'package:base':
#> 
#>     intersect, setdiff, setequal, union