URI Format
All resources in OpenViking are identified using theviking:// scheme:
string
required
Always
viking - identifies this as an OpenViking resourcestring
required
Top-level namespace:
resources, user, agent, session, queue, or tempstring
Resource path within the scope, following filesystem conventions
Examples
Scopes
OpenViking organizes all content into six top-level scopes, each with different lifecycle and visibility characteristics:- resources
- user
- agent
- session
- queue
- temp
Independent resources and knowledge
- Lifecycle: Long-term persistent
- Visibility: Global (can be shared across users/agents)
- Content: Documentation, code repositories, articles, research papers
Directory Structure
Moving away from traditional flat database thinking, OpenViking organizes all context as a filesystem. Agents can locate and browse data through deterministic paths and standard filesystem commands.
Complete Structure
URI Operations
Parsing URIs
Building URIs
API Usage
Targeting Specific Scopes
Filesystem Operations
Tree Traversal
Special Files
Example: Relations File
Best Practices
Use trailing slash for directories
Use trailing slash for directories
Always include trailing slash when referring to directories:
Scope-specific operations
Scope-specific operations
Add resources to appropriate scopes:
Use meaningful path hierarchies
Use meaningful path hierarchies
Organize resources with clear, hierarchical paths:
Leverage URI patterns for filtering
Leverage URI patterns for filtering
Use URI patterns to filter search results:
Implementation Example
Related Concepts
Architecture
System architecture and components
Context Types
Resource, Memory, and Skill types
Context Layers
L0/L1/L2 progressive loading
Storage
VikingFS and AGFS implementation
