Add development-scripts agent skill

Ports generic-scripts-module-v1 into a routed skill: module anatomy, shared
loggers/base modules, Taskfile integration, workflows, and pattern decisions.

Fixes a latent defect in the loggers example that silenced all logging in the
module scaffold: loggers/lib/--index-api.sh now sources --env-vars-reader.sh,
and the reader preserves already-exported values so caller overrides still win.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-07-30 22:18:55 +03:00
co-authored by Claude Opus 5
parent 39d051b6f0
commit 31a5408a6c
57 changed files with 2051 additions and 1 deletions
+75
View File
@@ -0,0 +1,75 @@
#!/bin/bash
# -------------------------------------------------------------------------------------
# IBM Confidential
# 6949-70F, 6949-80D
# © Copyright IBM Corp. 2018, 2024
# US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
# -------------------------------------------------------------------------------------
. ./.scripts/loggers/lib/--env-vars-reader.sh
TMP_BASE_LIB_ENV_VARS_READER=".scripts/base/lib/--env-vars-reader.sh"
export LOCAL_OS_TYPE="darwin"
export LOCAL_CPU_TYPE="amd64"
export LOCAL_HOME_DIR=$(pwd)
export LOCAL_HOME_DIR_NAME=${PWD##*/}
export LOCAL_GIT_ROOT_DIR=$(dirname "${LOCAL_HOME_DIR}")
export LOCAL_CACHE_DIR_KUBE=".kube"
export LOCAL_FILE_DOT_ENV=".env"
# Pre-load CA_ENVIRONMENT from .env if not already set
if [ -z "${CA_ENVIRONMENT}" ] && [ -f "${LOCAL_FILE_DOT_ENV}" ]; then
export CA_ENVIRONMENT=$(grep '^CA_ENVIRONMENT=' "${LOCAL_FILE_DOT_ENV}" | cut -d'=' -f2- | tr -d '"' | tr -d "'")
fi
export LOCAL_FILE_DOT_ENV_CA_ENVIRONMENT=".env-${CA_ENVIRONMENT}"
. ./.scripts/base/lib/-export-env-variables-from-file-dot-env.sh
_loggers_info "${CA_ENVIRONMENT}" "CA_ENVIRONMENT: ${CA_ENVIRONMENT}"
_loggers_info "${CA_ENVIRONMENT}" "LOCAL_FILE_DOT_ENV: ${LOCAL_FILE_DOT_ENV}"
_loggers_info "${CA_ENVIRONMENT}" "LOCAL_FILE_DOT_ENV_CA_ENVIRONMENT: ${LOCAL_FILE_DOT_ENV_CA_ENVIRONMENT}"
if
[ ! -e "${LOCAL_FILE_DOT_ENV}" ]
then
_loggers_error "${LOCAL_FILE_DOT_ENV}" "Missing ${LOCAL_FILE_DOT_ENV} file."
exit 1
else
set -o allexport
. "./${LOCAL_FILE_DOT_ENV}"
set +o allexport
fi
if
[ ! -e "${LOCAL_FILE_DOT_ENV_CA_ENVIRONMENT}" ]
then
_loggers_error "${TMP_BASE_LIB_ENV_VARS_READER}" "Missing ${LOCAL_FILE_DOT_ENV_CA_ENVIRONMENT} file."
exit 1
else
set -o allexport
. "./${LOCAL_FILE_DOT_ENV_CA_ENVIRONMENT}"
set +o allexport
fi
mkdir -p "${LOCAL_CACHE_DIR_KUBE}"
ALL_ARGS=("$@")
while [[ "$#" -gt 0 ]]; do
case $1 in
--local-os-type)
export LOCAL_OS_TYPE="$2"
;;
--local-cpu-type)
export LOCAL_CPU_TYPE="$2"
;;
--local-file-dot-env)
export LOCAL_FILE_DOT_ENV="$2"
;;
*) ;;
esac
shift
done
set -- "${ALL_ARGS[@]}"