Skip to content

Instantly share code, notes, and snippets.

@clairernovotny
clairernovotny / codex-plugin-marketplace-gist.md
Last active March 11, 2026 18:38
Codex plugins and marketplaces developer notes from source analysis

Codex Plugins and Marketplaces: Developer Notes

Rescanned against openai/codex main on March 11, 2026.

Status

The plugin system is active in source, but it is still explicitly under development.

  • features.plugins exists, is stage underDevelopment, and defaults to false in [features.rs][features-rs].
  • codex app-server now exposes plugin/list, plugin/install, and plugin/uninstall, and the README still marks them under development in [codex-rs/app-server/README.md][app-server-readme].
@clairernovotny
clairernovotny / directions.md
Created March 29, 2017 12:37
B2B Invites to VSTS

To invite external users into VSTS, we first need to add them to the AAD directory. We can do this today with PowerShell, but you need the right module installed.

Make sure you have the AzureADPreview module installed.

If you need it, from an admin powershell prompt, you can use: Install-Module AzureADPreview

To update it later: update-module AzureAdPreview To remove it once it hits the stable module: uninstall-module AzureAdPreview

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Security.Claims;
using System.Threading.Tasks;
using System.Web;
using IdentityServer3.Core.Models;
using IdentityServer3.Core.Services;
@clairernovotny
clairernovotny / build.proj
Created October 31, 2015 00:36
VSO NuGet CI
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" DefaultTargets="UpdateVersion" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildProjectDirectory)\Build.tasks" />
<!-- Setup configuration variables -->
<PropertyGroup>
<SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">$(MSBuildProjectDirectory)..\</SolutionDir>
<Configuration Condition="'$(OS)' == 'Windows_NT' And '$(Configuration)' == ''">Debug</Configuration>
<ConfigFolderPath>$(Configuration)</ConfigFolderPath>
@clairernovotny
clairernovotny / Job.cs
Created September 19, 2015 01:22
Job objects in .NET
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading.Tasks;
internal class Job : IDisposable
{
Param(
[string]$pathToSearch = $env:BUILD_SOURCESDIRECTORY,
[string]$buildNumber = $env:BUILD_BUILDNUMBER
)
try
{
$buildPattern = "\d+\.\d+\.\d+\.\d+"
if ($buildNumber -match $buildPattern -ne $true) {
@clairernovotny
clairernovotny / WImageRenderer.cs
Last active August 29, 2015 14:13
Image Renderer for WP8 Images
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using News.Controls;
class AuthenticatedHttpClientHandler : HttpClientHandler
{
private readonly Func<Task<string>> getToken;
public AuthenticatedHttpClientHandler(Func<Task<string>> getToken)
{
if (getToken == null) throw new ArgumentNullException("getToken");
this.getToken = getToken;
}
internal class Job : IDisposable
{
[DllImport("kernel32.dll", CharSet = CharSet.Unicode)]
static extern IntPtr CreateJobObject(IntPtr a, string lpName);
[DllImport("kernel32.dll")]
static extern bool SetInformationJobObject(IntPtr hJob, JobObjectInfoType infoType, IntPtr lpJobObjectInfo, UInt32 cbJobObjectInfoLength);
[DllImport("kernel32.dll", SetLastError = true)]
static extern bool AssignProcessToJobObject(IntPtr job, IntPtr process);
@clairernovotny
clairernovotny / gist:5906841
Created July 2, 2013 04:51
UI thread for store
public IAsyncAction ExecuteOnUIThread<TException>(DispatchedHandler action)
{
return CoreApplication.MainView.CoreWindow.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, action);
}