thulp-workspace 0.3.0

Workspace management for thulp execution contexts
Documentation
# thulp-workspace

Workspace and session management for thulp execution contexts.

## Overview

This crate provides functionality for managing agent workspaces, including context, state, and session persistence. Workspaces allow AI agents to maintain state between tool executions and organize their working environment.

## Features

- Create and manage multiple workspaces
- Persistent storage of workspace state
- Context data management
- Metadata storage
- Active workspace tracking
- JSON serialization/deserialization

## Usage

```rust
use thulp_workspace::{Workspace, WorkspaceManager};
use std::path::PathBuf;

// Create a new workspace
let workspace = Workspace::new("my_project", "My Project", PathBuf::from("/path/to/project"))
    .with_metadata("version", "1.0")
    .with_context("api_key", serde_json::json!("secret123"));

// Save to file
workspace.save_to_file("workspace.json").unwrap();

// Load from file
let loaded = Workspace::load_from_file("workspace.json").unwrap();

// Manage workspaces
let mut manager = WorkspaceManager::new();
manager.create(workspace);
manager.set_active("my_project").unwrap();
```

## Workspace Structure

A workspace contains:

- **ID**: Unique identifier for the workspace
- **Name**: Human-readable name
- **Root**: Root directory path
- **Metadata**: Key-value pairs for workspace metadata
- **Context**: Structured data for the execution context

## License

Licensed under either of:

- Apache License, Version 2.0 ([LICENSE-APACHE]../../LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license ([LICENSE-MIT]../../LICENSE-MIT or http://opensource.org/licenses/MIT)

at your option.