к тому что на данный момент ты подразумеваешь, что значения будут передаваться между соседними функциями
waiting(function(runNext) {
    runNext(1, 2, 3, 4, 5, 6, 7, 8, 9);
})
.wait(function(runNext, v1, v2, v3, v4, v5, v6, v7, v8, v9) {...})
.wait(function(runNext, v1, v2, v3, v4, v5, v6, v7, v8, v9) {...})
.wait(function(runNext, v1, v2, v3, v4, v5, v6, v7, v8, v9) {...})
.wait(function(runNext, v1, v2, v3, v4, v5, v6, v7, v8, v9) {
    // и только здесь нам пригодятся эти значения
})
альтернативный вариант
new AsyncChain()
    .add(function(NEXT) {
        this.state('a1', 1);
        this.state('a2', 2);
        this.state('a3', 3);
        this.state('a4', 4);
        this.state('a5', 5);
        this.state('a6', 6);
        this.state('a7', 7);
        this.state('a8', 8);
        this.state('a9', 9);
        NEXT();
    })
    .add(function(NEXT) {...})
    .add(function(NEXT) {...})
    .add(function(NEXT) {...})
    .add(function(NEXT) {
        // а теперь используем их, this.state('a...');
    })
    .go();