Skip to content

Instantly share code, notes, and snippets.

@jamiekt
jamiekt / SKILL.md
Last active March 6, 2026 17:43
day-summary
name description
day-summary
Generate a day summary capturing Claude Code conversations, GitHub activity, and Google Calendar meetings (with meeting notes), then append it to an Obsidian daily note for that day. Use this skill whenever the user asks for a daily summary, end-of-day recap, day review, or wants to log their work activity to Obsidian. Also trigger when the user says things like "wrap up my day", "what did I do today", or "log today's work", or "wrap up yesterday", or "what did I do yesterday", or "log yesterday's work".

Day Summary

Generate a detailed end-of-day summary of the user's Claude Code sessions and GitHub activity, then append it to their Obsidian daily note.

Overview

@jamiekt
jamiekt / data_processing.py
Created July 13, 2025 21:44
Building an offline personal RAG AI
import os
import time
from langchain_community.document_loaders import DirectoryLoader, TextLoader
from langchain.text_splitter import RecursiveCharacterTextSplitter
from langchain_ollama import OllamaEmbeddings
from langchain_chroma import Chroma
OLLAMA_BASE_URL = "http://host.docker.internal:11434"
EMBEDDING_MODEL_NAME = "nomic-embed-text"
@jamiekt
jamiekt / log.txt
Created November 28, 2024 15:39
tf_log trace output for terraform 1.10 failure
This file has been truncated, but you can view the full file.
2024-11-28T15:33:20.601Z [DEBUG] using github.com/hashicorp/go-tfe v1.70.0
2024-11-28T15:33:20.601Z [DEBUG] using github.com/hashicorp/hcl/v2 v2.23.0
2024-11-28T15:33:20.601Z [DEBUG] using github.com/hashicorp/terraform-svchost v0.1.1
2024-11-28T15:33:20.601Z [DEBUG] using github.com/zclconf/go-cty v1.15.1-0.20241111215639-63279be090d7
2024-11-28T15:33:20.601Z [INFO] Go runtime version: go1.23.3
2024-11-28T15:33:20.601Z [INFO] CLI args: []string{"/runner/_work/_temp/8d1518ff-a289-4de6-95a1-45d05ad67232/terraform-bin", "validate"}
2024-11-28T15:33:20.601Z [TRACE] Stdout is not a terminal
2024-11-28T15:33:20.601Z [TRACE] Stderr is not a terminal
2024-11-28T15:33:20.601Z [TRACE] Stdin is not a terminal
2024-11-28T15:33:20.601Z [DEBUG] Attempting to open CLI config file: /home/runner/.terraformrc
@jamiekt
jamiekt / demo_xcom_problem.py
Created April 14, 2024 20:30
Airflow XCom problem - solved
import datetime
from typing import Sequence
from airflow.decorators import task, dag
from airflow.providers.amazon.aws.operators.emr import EmrServerlessCreateApplicationOperator
class JamietEmrServerlessCreateApplicationOperator(EmrServerlessCreateApplicationOperator):
template_fields: Sequence[str] = ["config"]
def __init__(self, **kwargs) -> None:
@jamiekt
jamiekt / demo_xcom_problem.py
Last active April 14, 2024 20:29
Airflow XCom problem
import datetime
from airflow.decorators import task, dag
from airflow.providers.amazon.aws.operators.emr import EmrServerlessCreateApplicationOperator
@dag(
dag_id="demo-xcom-problem",
start_date=datetime.datetime(2021, 1, 1),
catchup=False
)
@jamiekt
jamiekt / query.sql
Last active October 22, 2022 16:41
ARRAY() with SELECT AS STRUCT
SELECT c.borough,c.year,
ARRAY(
select as struct c2.month,sum(value) crime_tally
from `bigquery-public-data.london_crime.crime_by_lsoa` as c2
where c.borough = c2.borough
and c.year = c2.year
group by c2.month
) as monthly_summary
FROM (
select distinct borough,year
return {
match.group(0)
for matched_policy in matched_policies
if (match := re.search(r"p\d{6}", matched_policy)) is not None
}
prefixes = set()
for matched_policy in matched_policies:
search_result = re.search(r_search, matched_policy)
assert search_result is not None
prefixes.add(search_result.group(0))
return prefixes
import re
matched_policies = {...} #some logic to derive a set
return {
re.search(r"p\d{6}", matched_policy).group(0)
for matched_policy in matched_policies
}
[tool.poetry]
name = "real-time-event-processor"
version = "0.1.0"
description = ""
authors = []
[tool.poetry.dependencies]
python = "^3.9, <3.10"
Flask = "^2.0.1"