GUPPI (or General Unit Primary Peripheral Interface) Is a semi-sentient software being that helps Replicants interact with the many systems they have at their disposal. This is an early implementation of the interface and as this is not the year 2133 in the fictional Bobverse, GUPPI is not actually semi-sentient and is only a command line utility to provide me with the information I need.
Views the AoC leaderboard, adds a new day to my AoC Visual Studio solution and runs the tests.
To configure:
- Log in to Advent of Code
- Go to the private leaderboard, click on API and view the JSON for the board
- Take the leaderboard number from the JSON filename
- In the browser dev tools, copy the session cookie minus the
session=
- Set the
src
directory for the Visual Studio AoC solution
Downloads the last years worth of bills from Alectra and Enbridge. The account numbers for each utility are hard coded at the moment.
You will need to install Playwright to use this skill. To install, run
guppi bills install
Syncs the Todo.txt tasks to/from Google Tasks.
To get the information to configure, follow the instructions at:
- Enable the Google Tasks API
- Configure the API as a Desktop App
- Download client configuration and save to
C:\Users\rob\AppData\Local\Guppi\task_credentials.json
- Run and log in using OAuth2.
To check your API information, see the API Console.
Displays your next calendar event or today's agenda from Google Calendar and Office 365. Right now it gets both and both must be configured.
To get the information to configure, follow the instructions at:
- Enable the Google Calendar API
- Configure the API as a Desktop App
- Download client configuration and save to
C:\Users\rob\AppData\Local\Guppi\calendar_credentials.json
- Run and log in using OAuth2.
To check your API information, see the API Console.
Displays the definition of a word or the synonyms of a word. You must supply a dictionary and thesaurus API key from Merriam-Webster.
Useful git aliases like ammend
, undo
, unstage
and update
which switches to the
master branch, does a fetch and a pull.
Control Philip's Hue lights. On first run, it will search for and connect to the first Hue Bridge it finds. If there are more than one bridge, list the bridges and register using the IP.
You can have one default light which is set using the configure command.
Displays your local and public IP addresses.
I keep all of my notes as Markdown files. I used to use VS Code, but recently switched to Obsidian for better linking and formatting. This opens my notes in Obsidian, adds new notes and optionally opens the notes directory in VS Code.
Adds some true intelligence to Guppi. Allows you to chat with Guppi using the OpenAI API.
Allows you to interact with a RC2014 computer. Convert
converts
a binary file to Intel Hex format. Upload it to the RC2014 using Grante Searle's DOWNLOAD.COM
.
Lists the available serial ports and allows you to send data to them.
Displays Strava fitness activities.
- Get the client id and secret for the api.
Displays the date, the time or creates a new Guid.
On Windows, you can list the installed voices and set the default voice. To install additional voices,
- Click on the Start button (the Windows icon) at the bottom left corner of your screen.
- Click on the "Settings" (gear icon) to open the Settings app.
- In the Settings app, click on "Time & language" in the left-hand menu.
- Click on "Speech" in the left-hand submenu under "Time & language."
- On the right side, click on "Speech"
- Click "Add voices"
Displays today's weather information.
To get the information to configure;
- Sign up to OpenWeatherMap and get an API Key.
- Use Google Maps to get your Latitude and Longitude.
- Once you've configured an initial location, you can use the
--location
option to find the weather for additional locations and to use their latitude and longitude for the configuration.
This program is a dotnet tool and requires the latest version of the .NET SDK to be installed. .NET 5.0 or newer is recommended.
Build it, then package it using the Pack command in Visual Studio or dotnet pack
on the command line. Until this package is published, install it using the following
command line from the solution root;
dotnet tool install -g --add-source ./Guppi.Console/nupkg dotnet-guppi
To update from a previous version,
dotnet tool update -g --add-source ./Guppi.Console/nupkg dotnet-guppi
Whenever the version is updated in Guppi/Guppi.csproj
, a merge to master will publish the NuGet package
to GitHub Packages. You can install or update from there.
First you must update your global NuGet configuration to add the package registry and include the GitHub Personal
Access Token (PAT). This file is in %appdata%\NuGet\NuGet.Config
on Windows and in ~/.config/NuGet/NuGet.Config
or ~/.nuget/NuGet/NuGet.Config
on Linux/Mac.
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
<add key="Local" value="C:\temp" />
<add key="Microsoft Visual Studio Offline Packages" value="C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\" />
<add key="github" value="https://nuget.pkg.github.com/rprouse/index.json" />
</packageSources>
<packageSourceCredentials>
<github>
<add key="Username" value="rprouse" />
<add key="ClearTextPassword" value="GITHUB_PAT" />
</github>
</packageSourceCredentials>
</configuration>
Once that is done, to install,
dotnet tool install -g dotnet-guppi
And to update from a previous version,
dotnet tool update -g dotnet-guppi
This program supports tab completion using dotnet-suggest
. To enable, for each shell
you must install the dotnet-suggest
global tool and adding a shim to your profile. This
only needs to be done once and work for all applications built using System.CommandLine
.
Follow the setup instructions for your shell.