diff --git a/home/sam/bin/task-due-notify.sh b/home/sam/bin/task-due-notify.sh new file mode 100755 index 0000000..ccfb20f --- /dev/null +++ b/home/sam/bin/task-due-notify.sh @@ -0,0 +1,11 @@ +#!/usr/bin/env bash + +# Query tasks due soon (adjust filters as needed, e.g., due.before:now+1h for 1-hour reminders) +DUE_TASKS=$(task due.before:now+1h status:pending export | jq -r '.[] | .description + " (due: " + .due + ")"') + +if [ -n "$DUE_TASKS" ]; then + while IFS= read -r task; do + notify-send "Task Due Soon" "$task" # Local Mako pop-up + curl -d "Task due soon: $task" https://ntfy.lab.audasmedia.com.au/tasks # Remote ntfy.sh (or swap to your Docker URL like http://YOUR_DOCKER_IP:PORT/task_topic) + done <<< "$DUE_TASKS" +fi diff --git a/pkgs/agentops.nix b/pkgs/agentops.nix index 5beba44..412ee78 100644 --- a/pkgs/agentops.nix +++ b/pkgs/agentops.nix @@ -1,19 +1,25 @@ -{ lib, buildPythonPackage, fetchPypi, python3Packages }: -buildPythonPackage rec { +{ lib +, python3Packages +, fetchPypi +}: +python3Packages.buildPythonPackage rec { pname = "agentops"; version = "0.4.21"; + pyproject = true; + build-system = with python3Packages; [ hatchling ]; src = fetchPypi { inherit pname version; - hash = "sha256-47759c6dfd6ea58bad2f7764257e4778cb2e34ae180cef642f60f56adced6510"; + hash = "sha256-R3Wcbf1upYutL3dkJX5HeMsuNK4YDO9kL2D1atztZRA="; }; - + # Bypasses strict dependency version checks that fail in Nixpkgs + pythonRelaxDeps = [ "packaging" "psutil" "termcolor" ]; propagatedBuildInputs = with python3Packages; [ - pydantic - requests - httpx - websockets + pydantic requests httpx websockets aiohttp + opentelemetry-api opentelemetry-exporter-otlp-proto-http + opentelemetry-instrumentation opentelemetry-sdk opentelemetry-semantic-conventions + ordered-set packaging psutil pyyaml termcolor wrapt ]; - + pythonImportsCheck = [ "agentops" ]; meta = with lib; { description = "Observability and DevTool Platform for AI Agents"; homepage = "https://github.com/AgentOps-AI/agentops"; diff --git a/pkgs/autogpt.nix b/pkgs/autogpt.nix new file mode 100644 index 0000000..8a30d17 --- /dev/null +++ b/pkgs/autogpt.nix @@ -0,0 +1,26 @@ +{ lib, buildPythonPackage, fetchFromGitHub, python3Packages }: +buildPythonPackage rec { + pname = "autogpt"; + version = "0.5.2"; + src = fetchFromGitHub { + owner = "Significant-Gravitas"; + repo = "AutoGPT"; + rev = "v${version}"; + hash = "sha256-0000000000000000000000000000000000000000000000000000"; # NEEDS UPDATE + }; + + propagatedBuildInputs = with python3Packages; [ + openai + langchain + chromadb + sqlalchemy + beautifulsoup4 + requests + ]; + + meta = with lib; { + description = "AutoGPT - Autonomous AI agent"; + homepage = "https://github.com/Significant-Gravitas/AutoGPT"; + license = licenses.mit; + }; +} diff --git a/pkgs/cao-cli.nix b/pkgs/cao-cli.nix index 3ee327f..bb73e1c 100644 --- a/pkgs/cao-cli.nix +++ b/pkgs/cao-cli.nix @@ -1,22 +1,26 @@ -{ lib, buildPythonPackage, fetchFromGitHub, tmux, uv, python3Packages }: -buildPythonPackage rec { +{ lib +, python3Packages +, fetchFromGitHub +}: +python3Packages.buildPythonPackage rec { pname = "cli-agent-orchestrator"; version = "1.0.3"; + pyproject = true; + build-system = with python3Packages; [ hatchling ]; src = fetchFromGitHub { owner = "awslabs"; repo = "cli-agent-orchestrator"; rev = "v${version}"; - hash = "sha256-0000000000000000000000000000000000000000000000000000"; # NEEDS UPDATE + hash = "sha256-syfUQaHeubQnFLgAcIoMozcYA8wuFfcuR2at/J96FoE="; }; - + # Relaxes version bounds on dependencies for NixOS compatibility + pythonRelaxDeps = true; propagatedBuildInputs = with python3Packages; [ - pydantic - requests - typer - rich - python-dotenv + fastapi pydantic sqlalchemy uvicorn websockets libtmux + click requests aiofiles python-frontmatter watchdog + apscheduler fastmcp ]; - + pythonImportsCheck = [ "cli_agent_orchestrator" ]; meta = with lib; { description = "CLI Agent Orchestrator - multi-agent collaboration via tmux"; homepage = "https://github.com/awslabs/cli-agent-orchestrator"; diff --git a/pkgs/mediapipe.nix b/pkgs/mediapipe.nix index 1cf8b18..1a72a58 100644 --- a/pkgs/mediapipe.nix +++ b/pkgs/mediapipe.nix @@ -1,21 +1,31 @@ -{ lib, buildPythonPackage, fetchPypi, python3Packages, opencv, protobuf }: -buildPythonPackage rec { +{ lib +, stdenv +, python3Packages +, fetchurl +, autoPatchelfHook +, opencv +, libglvnd +}: +python3Packages.buildPythonPackage rec { pname = "mediapipe"; version = "0.10.32"; - src = fetchPypi { - inherit pname version; - hash = "sha256-4b0941fbbbce41862f13cb1850c4878c13dbc62cd5e81e74880051b7a20ce3b6"; - extension = "whl"; - dist = "manylinux_2_28_x86_64"; + format = "wheel"; + src = fetchurl { + url = "https://files.pythonhosted.org/packages/e3/98/00cd8b2dcb563f2298655633e6611a791b2c1a7df1dae064b2b96084f1bf/mediapipe-0.10.32-py3-none-manylinux_2_28_x86_64.whl"; + hash = "sha256-SwlB+7vOQYYvE8sYUMSHjBPbxizV6B50iABRt6IM47Y="; }; - + nativeBuildInputs = [ autoPatchelfHook ]; + buildInputs = [ + stdenv.cc.cc.lib + opencv + libglvnd + ]; propagatedBuildInputs = with python3Packages; [ numpy absl-py protobuf opencv4 ]; - meta = with lib; { description = "MediaPipe - Google's media processing framework"; homepage = "https://github.com/google/mediapipe";