REFAC: Shift terminology from Cognitive Loop to Cognitive Cycle

This commit is contained in:
2026-04-14 15:58:58 -04:00
parent 849c078c37
commit 2d4a6d1586
5 changed files with 55 additions and 5 deletions

View File

@@ -41,7 +41,7 @@ To guarantee long-term stability, opencortex enforces a strict architectural bou
The Lisp microkernel does almost no actual "work." It is a thin, unbreakable harness strictly responsible for three things: The Lisp microkernel does almost no actual "work." It is a thin, unbreakable harness strictly responsible for three things:
1. *The Memory:* Maintaining the live graph of your Memex in RAM. 1. *The Memory:* Maintaining the live graph of your Memex in RAM.
2. *The Communication Protocol:* Managing the secure bridge between the agent and the outside world. While power users can connect natively via Emacs or Vim, the vast majority of users will interact with opencortex exclusively through chat clients (like Telegram, Signal, or Matrix), web dashboards, or a Terminal UI (TUI). The harness doesn't care; it just securely routes the messages. 2. *The Communication Protocol:* Managing the secure bridge between the agent and the outside world. While power users can connect natively via Emacs or Vim, the vast majority of users will interact with opencortex exclusively through chat clients (like Telegram, Signal, or Matrix), web dashboards, or a Terminal UI (TUI). The harness doesn't care; it just securely routes the messages.
3. *The Cognitive Loop:* Moving signals through the Perceive -> Probabilistic -> Deterministic -> Dispatch pipeline. 3. *The Cognitive Cycle:* Moving signals through the Perceive -> Probabilistic -> Deterministic -> Dispatch pipeline.
Everything else—AI routing, vector embeddings, shell execution, or web browsing—is pushed entirely out of the harness and into *Fat Skills*. Everything else—AI routing, vector embeddings, shell execution, or web browsing—is pushed entirely out of the harness and into *Fat Skills*.

View File

@@ -130,6 +130,31 @@ NC='\033[0m'
command_exists() { command -v "$1" >/dev/null 2>&1; } command_exists() { command -v "$1" >/dev/null 2>&1; }
update_opencortex() {
echo -e "${BLUE}Updating OpenCortex...${NC}"
if [ -d ".git" ]; then
echo "Pulling latest changes from repository..."
git pull origin main
fi
if [ -f .env ]; then
SKILLS_DIR=$(grep "^SKILLS_DIR=" .env | cut -d"\"" -f2)
SKILLS_DIR=${SKILLS_DIR:-$(pwd)/notes}
echo "Synchronizing core skills to $SKILLS_DIR..."
mkdir -p "$SKILLS_DIR"
cp -n skills/*.org "$SKILLS_DIR/" 2>/dev/null || true
fi
if command_exists docker-compose && [ -f "docker-compose.yml" ]; then
echo "Rebuilding Docker image..."
docker-compose up -d --build
fi
echo -e "${GREEN}✓ Update complete.${NC}"
exit 0
}
if [[ "$1" == "--update" ]]; then
update_opencortex
fi
# 1. Try to drop straight into the CLI chat # 1. Try to drop straight into the CLI chat
if command_exists socat && socat - TCP:$HOST:$PORT,connect-timeout=1 2>/dev/null; then if command_exists socat && socat - TCP:$HOST:$PORT,connect-timeout=1 2>/dev/null; then
echo -e "${BLUE}Connected to autonomous brain at $HOST:$PORT...${NC}" echo -e "${BLUE}Connected to autonomous brain at $HOST:$PORT...${NC}"
@@ -195,7 +220,7 @@ if [ -f "docker-compose.yml" ] && [ -d "literate" ]; then
# Seed Core Skills # Seed Core Skills
echo -e "\n${BLUE}Seeding Skills...${NC}" echo -e "\n${BLUE}Seeding Skills...${NC}"
MEMEX_TARGET=$(dirname $(dirname "$INSTALL_DIR")) MEMEX_TARGET=$(dirname $(dirname "$INSTALL_DIR"))
SKILLS_DIR="$MEMEX_TARGET/notes" SKILLS_DIR=$(grep "^SKILLS_DIR=" .env | cut -d"\"" -f2) ; SKILLS_DIR=${SKILLS_DIR:-$MEMEX_TARGET/notes}
mkdir -p "$SKILLS_DIR" mkdir -p "$SKILLS_DIR"
cp -n skills/*.org "$SKILLS_DIR/" 2>/dev/null || true cp -n skills/*.org "$SKILLS_DIR/" 2>/dev/null || true
echo -e "${GREEN}✓ Core skills seeded to $SKILLS_DIR.${NC}" echo -e "${GREEN}✓ Core skills seeded to $SKILLS_DIR.${NC}"

View File

@@ -12,6 +12,31 @@ NC='\033[0m'
command_exists() { command -v "$1" >/dev/null 2>&1; } command_exists() { command -v "$1" >/dev/null 2>&1; }
update_opencortex() {
echo -e "${BLUE}Updating OpenCortex...${NC}"
if [ -d ".git" ]; then
echo "Pulling latest changes from repository..."
git pull origin main
fi
if [ -f .env ]; then
SKILLS_DIR=$(grep "^SKILLS_DIR=" .env | cut -d"\"" -f2)
SKILLS_DIR=${SKILLS_DIR:-$(pwd)/notes}
echo "Synchronizing core skills to $SKILLS_DIR..."
mkdir -p "$SKILLS_DIR"
cp -n skills/*.org "$SKILLS_DIR/" 2>/dev/null || true
fi
if command_exists docker-compose && [ -f "docker-compose.yml" ]; then
echo "Rebuilding Docker image..."
docker-compose up -d --build
fi
echo -e "${GREEN}✓ Update complete.${NC}"
exit 0
}
if [[ "$1" == "--update" ]]; then
update_opencortex
fi
# 1. Try to drop straight into the CLI chat # 1. Try to drop straight into the CLI chat
if command_exists socat && socat - TCP:$HOST:$PORT,connect-timeout=1 2>/dev/null; then if command_exists socat && socat - TCP:$HOST:$PORT,connect-timeout=1 2>/dev/null; then
echo -e "${BLUE}Connected to autonomous brain at $HOST:$PORT...${NC}" echo -e "${BLUE}Connected to autonomous brain at $HOST:$PORT...${NC}"
@@ -77,7 +102,7 @@ if [ -f "docker-compose.yml" ] && [ -d "literate" ]; then
# Seed Core Skills # Seed Core Skills
echo -e "\n${BLUE}Seeding Skills...${NC}" echo -e "\n${BLUE}Seeding Skills...${NC}"
MEMEX_TARGET=$(dirname $(dirname "$INSTALL_DIR")) MEMEX_TARGET=$(dirname $(dirname "$INSTALL_DIR"))
SKILLS_DIR="$MEMEX_TARGET/notes" SKILLS_DIR=$(grep "^SKILLS_DIR=" .env | cut -d"\"" -f2) ; SKILLS_DIR=${SKILLS_DIR:-$MEMEX_TARGET/notes}
mkdir -p "$SKILLS_DIR" mkdir -p "$SKILLS_DIR"
cp -n skills/*.org "$SKILLS_DIR/" 2>/dev/null || true cp -n skills/*.org "$SKILLS_DIR/" 2>/dev/null || true
echo -e "${GREEN}✓ Core skills seeded to $SKILLS_DIR.${NC}" echo -e "${GREEN}✓ Core skills seeded to $SKILLS_DIR.${NC}"

Binary file not shown.

View File

@@ -28,8 +28,8 @@
(clrhash opencortex::*skills-registry*) (clrhash opencortex::*skills-registry*)
(setf (gethash "crasher" opencortex::*skills-registry*) skill) (setf (gethash "crasher" opencortex::*skills-registry*) skill)
;; Since cognitive-loop is recursive and our core hooks inject a NEW stimulus, ;; Since cognitive-cycle is recursive and our core hooks inject a NEW stimulus,
;; we can't easily capture it in a single synchronous call without mocking cognitive-loop. ;; we can't easily capture it in a single synchronous call without mocking cognitive-cycle.
;; However, we can check if harness-log received the "SYSTEM ERROR" message. ;; However, we can check if harness-log received the "SYSTEM ERROR" message.
(harness-log "CLEAN LOG") (harness-log "CLEAN LOG")
(opencortex:process-signal stimulus) (opencortex:process-signal stimulus)