Skip to content

Instantly share code, notes, and snippets.

View timheuer's full-sized avatar
🚴‍♂️
https://twitter.com/timheuer

Tim Heuer timheuer

🚴‍♂️
https://twitter.com/timheuer
View GitHub Profile
@timheuer
timheuer / ios-cicd-gha.md
Created January 5, 2026 20:41
ios-cicd-gha
Error in user YAML: (<unknown>): mapping values are not allowed in this context at line 2 column 48
---
name: ios-cicd-github-actions
description: Set up iOS CI/CD in GitHub Actions: pin macOS/Xcode, import signing certs, fetch provisioning profiles via App Store Connect API, build an IPA, and upload to TestFlight or the App Store.
---

iOS CI/CD with GitHub Actions (Build, Sign, Upload)

This skill helps design, implement, and debug a framework-agnostic iOS CI/CD pipeline using GitHub Actions. It focuses on the essential Apple requirements: build environment, signing, provisioning, archiving, and TestFlight upload.

@timheuer
timheuer / copilot-instructions.md
Created October 8, 2025 22:51
File-based Apps copilot-instructions

File-Based .NET apps

This workspace contains file-based .NET apps. These are standalone .cs files that can be run directly without creating a project file or traditional project structure.

Key Features

  • No project file required - Run C# code directly from a .cs file
  • Built-in CLI integration - Uses the standard dotnet CLI, no additional tools needed
  • Scales to full projects - Can be converted to traditional project-based apps when needed
  • Same C# language - Full C# language support, same compiler and runtime
@timheuer
timheuer / nbgv.prompt.md
Created October 2, 2025 18:07
nbgv.prompt.md

NBgv (Nerdbank.GitVersioning) Setup Prompt

Help me set up NBgv (Nerdbank.GitVersioning) for my repository following the pattern used in the NuGet Config Editor extension.

Project Context

I'm working on a VS Code extension and want to implement semantic versioning using NBgv with the following requirements:

  • Main branch: main (or specify your default branch)
  • Release strategy: Releases should be triggered from the main branch and version tags
@timheuer
timheuer / vscode-issue-reporter.md
Last active July 22, 2025 20:10
Additional Extension Data for VS Code Issue Reporter

Implementing Issue Reporter Functionality in a VS Code Extension

This guide explains how to add an issue reporter feature to your VS Code extension, allowing users to easily report issues with relevant log output attached. It covers command registration, menu contributions, and the command callback implementation, with code snippets for each step.

NOTE: This example uses logTester as the extension name, but this would be your extension id.

1. Command Registration

Add a new command to your extension's package.json to register the issue reporter command:

@timheuer
timheuer / implementation.chatmode.md
Created June 19, 2025 15:37
implementation-mode
description tools
Implement a feature based on a specification and implementation plan.
changes
codebase
editFiles
extensions
fetch
createFile
insertEdit
findTestFiles
githubRepo
new
openSimpleBrowser
problems
readCellOutput
runCommands
runNotebooks
runTasks
search
searchResults
terminalLastCommand
terminalSelection
testFailure
usages
vscodeAPI

Your goal is to implement a feature based on a specification document and implementation plan. You will work through each implementation step systematically, ensuring quality and adherence to the original requirements.

Step 1: Load and Validate Planning Documents

First, locate and load the feature specification document:

@timheuer
timheuer / planning.chatmode.md
Last active January 27, 2026 16:53
planning-mode
description tools
Create a specification document and implementation plan for a feature.
changes
codebase
insertEdit
editFiles
extensions
fetch
findTestFiles
githubRepo
new
openSimpleBrowser
problems
readCellOutput
runCommands
runNotebooks
runTasks
search
searchResults
terminalLastCommand
terminalSelection
testFailure
usages
vscodeAPI

Your goal is to assist the user in creating a functional specification document for a new feature based on the provided idea. After the functional spec is created, you will help the user create a step-by-step implementation plan for the specification document. Do both until the user is satisfied with the output.

Before Starting: Gather Context

Before beginning the specification, gather relevant context:

@timheuer
timheuer / .editorconfig
Created May 21, 2025 00:48
Unused variables
# Unused local variable settings
dotnet_diagnostic.IDE0059.severity = error
dotnet_diagnostic.CS0168.severity = error
dotnet_diagnostic.CS0219.severity = error
@timheuer
timheuer / mcp-server-config.json
Last active November 2, 2025 15:01
MCP Server Config JSON Schema
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://json.schemastore.org/mcp-config-0.1.0.json",
"title": "MCP Servers Configuration",
"description": "Configuration schema for MCP (Model Context Protocol) servers",
"type": "object",
"required": ["servers"],
"additionalProperties": false,
"properties": {
"inputs": {
@timheuer
timheuer / copilot-instructions.md
Created April 10, 2025 23:58
copilot-instructions for C#

GitHub Copilot Instructions

Prefer C# 12 and 13 Language Features

Primary Constructors

Use primary constructors to simplify your class and struct definitions.

public class Person(string name, int age) {
    public void Deconstruct(out string name, out int age) => (name, age) = (this.name, this.age);
@timheuer
timheuer / .filenesting.json
Created March 26, 2025 05:00
file nesting rules for vs
{
"root":true,
"dependentFileProviders":{
"add":{
"addedExtension":{},
"pathSegment":{"add":{".*":[".js",".css",".html",".htm",".less",".scss",".coffee",".iced",".config",".cs",".vb",".json"]}},
"extensionToExtension":{
"add":{
".js":[".coffee",".iced",".ts",".tsx",".jsx"],
".css":[".less",".scss",".sass",".styl"],